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

一、Linux 调试背景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编译器中的F10s (或step)逐语句,类似于vs编译器中的F11fiinish运行到当前函数的结尾

四、断点生成、删除

指令功能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

相关阅读

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。