GDB基本操作

命令 含义/用法
start 开始调试,停在第一行代码处 (gdb) start
l(list) 查看源代码 (gdb) l <number/function>
b(breakpoint) 设置断点 (gdb) b <行号/函数名>b … if i == 3:条件断点
info info breakpoints:显示所有断点 info stack:查看堆栈信息 info args:查看当前参数值 info frame:输出栈帧的使用情况 info locals:查看局部变量
s(step) 执行一行源程序代码,如果此行代码中有函数调用,则进入该函数 (gdb) s
n(next) 执行一行源程序代码,此行代码中的函数调用也一并执行 (gdb) n
r(run) 运行被调试的程序 (gdb) r
c(continue) 继续执行被调试程序,直至下一个断点或程序结束 (gdb) c
finish 函数结束
p(print) 显示指定变量的值 (gdb) p <变量名>
set args name=v 可指定运行时参数。(gdb) set args 10 20
show args 查看运行时参数
q(quit) 退出GDB调试环境 (gdb) q
bt(backtrack) 查看函数堆栈 (gdb) bt
f(frame) 切换当前栈 (gdb) f <栈序号>
u(until) 结束当前循环 (gdb) until
set variable 给变量赋值
jump 在源代码的另一段开始运行
delete 删除断点 (gdb) delete <断点号>
watch 变量变化时暂停运行
awatch 变量被访问、改变是暂停执行
rwatch 变量被访问时暂停执行
disp(display) 跟踪查看某个变量,每次停下来都显示它的值
k(kill) 终止正在调试的程序