☞gdb的安装教程
gdb是Linux环境下的强大的代码调试工具,有了它我们就可以将程序玩转于股掌之间。gdb的强大之处在于它是一个命令行工具,可以形成脚本执行,这将会给我们的开发过程带来很大的便利。
使用gcc编译一定要加上 -g 选项,这样生成的文件是便于调式的。
下面介绍一些常用的gdb指令:
进入调试
显示源代码
运行程序
查看变量的值
命令:undisplay 变量,可取消追踪某变量
命令:undisplay,可取消追踪所有变量
命令:print(可简写为p) 表达式,可打印表达式的值,也可直接修改修改变量的值
进入函数
查看函数栈,选择栈帧
退出调试
命令:quit,可简写为q
命令:kill,退出本次调试,但不退出gdb
对上面所用到命令进行总结:
命令(括号内为简写) | 描述 |
---|---|
list(l) | 列出源代码,每次10行 |
list 行号 | 列出从第x行开始的源代码 |
start | 开始执行程序,停在main函数第一行语句前面等待 |
next(n) | 开始执行下一句 |
info(i) locals | 查看当前栈帧局部变量的值 |
display 变量名 | 追踪显示一个变量 |
undisplay 变量名 | 取消追踪显示变量,其中不加变量名为取消所有 |
print(p) | 打印表达式的值,可修改变量的值 |
set var | 可修改变量的值 |
step(s) | 执行下一条语句,如果有函数调用则进入函数中 |
backtrace(bt) | 查看各级函数调用及参数 |
frame(f) 栈帧号 | 选择栈帧 |
quit(q) | 退出调试 |
kill | 退出本次调试 |