通过gcc编译时必须使用-g选项才能使用gdb调试
gcc -g hello.c -o hello
gdb的选项是非常多的,在gdb里,把命令按类划分,可以通过help xxx来查看相应的帮助
gdb>help #显示全部帮助的类
gdb>help running #显示运行的帮助
gdb>help breakpoints #查看断点相关的命令
使用示例:
$gdb hello #启动GDB
gdb >list #显示源代码
gdb >break 7 #在第7行设置断点
gdb >run #程序开始运行
gdb >display i #查看变量的值
gdb >next #单步运行
gdb>\n #直接回车,重复上一次的命令
常用的选项解析
选项 | 解释 |
list[num,function] | 查看源代码 |
break[num, function] | 设置断点 |
break num if condition | 设置条件断点 |
disable 断点号 | |
enable 断点号 | |
next | 下一步(会跳过函数) |
step | 下一步(会进入函数) |
finish | 执行到函数结束 |
print i = 0 | 修改程序的变量 |
whatis name | 查看变量类型,纸打印结构体名 |
ptype name | 查看详细类型,会打印详细的结构体 |
run | 运行 |