学用dbx

学用dbx

CND8学院  C/C++教程 发布日期:2008年07月09日

  dbx是UNIX下基于命令行界面的程序调试器,假如不能学会dbx,无疑将为你在UNIX端的编程上增添许多的困难。
    dbx是通过交互执行dbx子命令来达到调试的目的的。
    在调试程序前,必须先将-g选项包含在编译信息中,编译生成带调试信息的文件,即:cc -o filename -g file.c。
    进入dbx通常只需输入"dbx filename"即可,filename为待调试的可执行程序名。
    dbx加载后就显示提示符:(dbx),此时用户就可以输入dbx子命令进行调试了。
  
    下面是一些dbx的常用子命令:
  
   1.基本操作命令
  
    run arg1 arg2 ... :以arg1,arg2,...为参数开始运行现有进程。
    r:用上次使用的参数再次运行现有进程。
    source filename:从文件名为filename的文件中读入dbx子命令并执行。
    return:执行完目前的进程后返回。
    sh command:不退出dbx,执行一条操作系统shell命令。
    sh:暂时进入shell状态。
    quit:退出dbx,若程序未执行完则终止其执行。
  
   2.置断点与跟踪点命令
  
    stop var at n:置断点命令,当第n行的变量var发生变化时将程序挂起。
    stop var in proc:置断点命令,当过程proc的变量var发生变化时将程序挂起。
    stop at n:置断点命令,当执行到第n行时将程序挂起。
    stop in proc:置断点命令,当执行到过程proc时将程序挂起。
    trace var at n:置跟踪点命令,当第n行的变量var改变时显示跟踪信息。
    trace var in proc:置跟踪点命令,当过程proc的变量var改变时显示跟踪信息。
    trace n:置跟踪点命令,当执行到第n行时显示被跟踪信息。
    trace proc:置跟踪点命令,当执行到过程proc时显示被跟踪信息。
    trace eXPr at n:置跟踪点命令,当执行到第n行时显示var的值。
    delete nall:删除第n行的/所有的断点与跟踪点。
  
   3.调试命令
  
    cont at n:运行直至第n行。
    print var:打印变量var的值。
    printf "string",expr,...:以C语言的格式打印。
    where:打印当前调试状态,包括当前进程的信息。
    func:查看当前运行的进程名。
    func proc:移至到调用proc进程的母进程处。
    whatis name:显示对变量名或过程名name的类型。
    step [n]:单步执行一行或n行,碰到线程调用时进入线程调用。
    next [n]:单步执行一行或n行,碰到线程调用时拒绝进入线程调用。
    skip [n]:跳过一个或n个断点,继续往下执行
    dump [proc] [>file]:显示当前或proc过程的所有变量名及其值
    assign var=expr:给变量var赋以表达式expr的值
  
   4.读取被调试程序命令
  
    list:列出从当前行开始的若干行源程序。
    list n,m:列出从第n行到第m行的源程序。
    /string:朝文件尾方向查找字符串string
    ?string:朝文件头方向查找字符串string
    file filename:将查看的文件切换到文件filename处。

http://school.cnd8.com/c/jiaocheng/9387.htm
  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值