C语言使用----GDB调试

1、gdb退出命令:q。安装命令 yum -y install gdb或者sudo apt-get install gdb


2、如果希望编译后的程序能够可以被调试,编译时要加-g的参数,-g把book的文件信息加到生成的book
例如gcc -g -o book book.c
在命令提示符下面输入gdb book就可以调试book程序了


3、基本调试命令
命令             命令缩写                  命令说明


set args                                         设置主程序的参数。
                                                      例如:./book119/oracle/c/book1.c/tmp/book1.c
                                                      设置参数的方法是:
                                                      gdb book119
                                                      (gdb) set args /oracle/c/book1.c/tmp/book1.c


Break               b                            设置断点,b 20表示在第20行设置断点,可以设置多个断点


Run                  r                             开始运行程序,程序运行到断点位置就会停下来,如果没有
                                                      遇见断点,程序会一直运行下去。


Next                 n                             执行当前语句,如果该语句为函数调用,不会进入函数内

                                                       执行


step                  s                           执行当前行语句,如果该语句是函数调用,则进入函数执行其中
                                                    第一条语句。注意:如果函数是库函数或第三方提供的函数,用s
                                                    也是进不去的,因为没有源代码。如果是自己定义的函数,只要
                                                     有源码就可以进去。


print                  p                         显示变量值,例如:p name表示显示变量name的值

continue           c                           继续程序的运行,直到遇见下一个断点

set var name=v                          设置变量的值,假设程序有两个变量:int ii;char name[21];
                                                   set var ii=10 把ii的值设置为10;
                                                   set var name="西施"把name的值设置为"西施",注意,不是strcpy


quit                  q                          退出gdb环境。


4、在gdb环境下面,可以通过上下光标键切换执行过的gdb命令。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值