Linux:vim调试工具gdb | 常见命令集

一、Linux 调试背景

linux发布的程序由debug和release两个版本,但在Linux环境下生成的程序默认为release版本。但一份代码需要被调试,该代码的发布模式必须是debug。所以在在使用g++编译代码时,需要额外增加-g选项。

gdb常见命令集

二 、进入、退出调试、显示源代码

指令功能
gdb + 二进制文件(debug模式生成的)开始调试该文件对应的源文件
quit退出调试
l(或list)+ number从number位置开始显示源代码,每次打印10行;由于gdb会记录最近的历史指令,所以直接回车会接着打印源代码
l(或list)+ 函数名列出该函数的代码源
until + number跳至number行

三、 程序执行操作

指令功能
r(或ruun)开始调试,类似于vs编译器中的F5,即如果程序中断点,则在程序运行中的第一个断点出停止,否则直接运行结束
c(或Continue或continue)从一个断点直接运行到下一个断点
n (或next)逐过程,类似于vs编译器中的F10
s (或step)逐语句,类似于vs编译器中的F11
fiinish运行到当前函数的结尾

四、断点生成、删除

指令功能
b(或break) + number、file:number 两种方式在文件的number行打断点
b(或break) + function、file:function 两种方式在函数function中的第一行有效代码出打断点
d(或delete) + breakpoints)删除所有断点
d(或delete) + n删除序号为n所对应的断点
info + b查看所有断点信息
enable + 断点序号开启断点,即让禁止断点重新发挥断点作用
disable + 断点序号禁止断点,即该断点依然存在,但不起任何作用

五、其他

指令功能
bt (或breaktrace)调用堆栈
p + 变量显示变量的值
display + 变量常显示某个变量,类似于vs中的监视中的窗口,在后续调试过程中该变量的值会一直显示,直到程序结束
undisplay + 变量所对应的序号取消常显示
set + var + 变量 = num将变量的值修改为num
  • 13
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

独享你的盛夏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值