编译:加上 -g 选项 编译可执行文件 得到调试表
使用: gdb 可执行文件名
gdb 调试命令 | 说明 |
---|---|
list / l | 列出源码,方便根据源码行号设置断点 |
break/b | b n 在第 n 行 设置断点 b if expr 设置条件断点 |
info b | 查看断点 |
run / r [arg1] [arg2] | 运行程序 ,查找段错误出现位置 ;后面也可以跟main 参数,运行时传参 |
next/n | 下一条指令,越过函数 |
step/s | 下条指令,进入函数 |
print/p | p var 查看变量var的值 |
continue/c | 继续执行断点后续指令 |
quit/q | 退出gdb 调试 |
start | 单步执行 |
finish | j结束当前函数调用 |
set args | 设置程序调试执行参数 |
ptype var | 查看变量类型 |
backtrace/bt | 查看当前程序正存活的栈帧及函数调用层级关系, |
frame | 根据栈帧编号切换栈帧,通常用于在当前函数中查看上级函数的变量 |
display <var> | 观察变量 |
undisplay n | 取消观察编号n 的变量 |
file a.out | 载入可执行程序a.out |