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) |
终止正在调试的程序 |