gdb调试程序

在linux下调试c或c++。
今天自己用来下,下面总结点用法。

1、在编译的时候要加上 -g,好像不用也是可以的
gcc -g testc -o test

2、进入gdb
gdb -q test (这边的-q是去掉gdb自动输出的一些版权问题)
或者gdb
file text 这边进入gdb后,用file来导入需要调试的文件。

3、在gdb的命令模式下,其实和linux的命令差不多的就是前面成了(gdb),命令不同罢了。
list查看源码 list 5, 10 list test.c: get_sum
run运行程序 quit退出
break 加断点,可以是行的,函数的,在行上还能加上特定的条件
break 15 if i == 99 在15行的地方,当 i 等于 99 的时候断点
watch 存条件的断点。当某个变量满足条件的时候就断点
watch i == 99
查看断点信息:info breakpoints
enable/disable + 断点编号 启用/禁用
清楚断点clear/delete

4、查看信息
print 查看变量,还可以给变量赋值 print i = 200 (和 set variable i = 200一样)
print 还有个表达式@不太懂,也是输出变量的。
whatis 查看变量类型

5、程序控制
continue继续执行,直到下个断点
kill跳出程序
next/step单步调试语句   next把函数当成一个语句,而step则调进函数
nexti/stepi单步执行指令  区别和上面一样

说实话,还是没有ide的调试方便哈。不过功能已经很强大了!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值