linux下gdb的调试使用

1.gdb调试的对象是可执行文件,而不是程序的源代码。因此在使用gcc编译器时 需加-g选项。告诉gcc编译器加入调试信息。

例如 gcc -g test.c -o test

2.调试gdb的格式是

例如 gdb test

3.在启动gdb后,会显示一段版权说明,如果要不显示 加入-q即可

例如 gdb -q test

4.如果要退出时使用 quit命令

5.显示和查找程序源代码

list 5,10:显示第5行到第10行代码

list test.c:5,10 :显示test.c 的第5行到第10行代码

list get_sum :显示get_sum函数周围的代码

list test.c:get_sum:显示test.c文件的get_sum函数周围的代码

6.如果在调试过程中要运行linux命令,则可在gdb的提示符下输入shell命令

例如:shell ls

7.使用gdb -q test或 file test只是装入程序,程序并没有运行,如果要程序运行,在gdb提示符下输入 run就好

8.设置和管理断点

例如:break 7 在第7行设置断点

然后输入run 即可

也可在函数处设置断点 例如break get_sum

8.1 还有一种方法设置断点的命令 

watch i == 99 

9.要使程序继续进行 则输入continue 或者next 

10.可使用print 打印出来变量的值

11.查看当前设置的中断点 

info breakpoints

12.使中断失效或有效

disable 断点编号(失效)   enable 断点编号(恢复有效)

13.删除断点 

diasble 或者 clear 命令(后面添加行号或者断点编号)

14.查看和设置变量的值

1.print' 变量或表达式:打印变量或表达式当前的值

变量=值: 对变量进行赋值

表达式@要打印的值得个数n打印表达式值开始的n个数

15.whaits

显示某个变量或者表达式值得数据类型

16.控制程序的执行

continue:继续执行,直到下一个断点或者运行为止

kill:结束当前程序的调试

next和step:一次一条的执行。next执行函数调用后的语句;而step 则会跟踪进入函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值