GDB 调试命令备忘

GDB 调试命令备忘

在一切开始之前,编译时要带上 -g 选项。可以使用 -g3 生成包含宏定义的调试信息,可以在查看变量时使用宏。

GDB 可以使用回车重复执行上一条命令。也可以按上下键找到之前执行过的命令。

启动:

gdb [可执行文件名]

也可以 gdb 后使用 file [可执行文件名] 开始调试。

q 退出 gdb。

列出代码:

l(list) 显示代码。l [行号/函数名] 显示指定位置附近的代码。

执行:

r(run) 开始运行。

n(next) 逐过程,可以跳到当前函数的下一行。

s(step) 逐语句,可以进入函数。

c(countinue),跳到下一个断点。

*finish,跳出函数。

*until [行号],跳到指定行。

断点:

b(breakpoint) [行号] 打断点。

info b 查看断点信息,可以看到当前打的断点行号、编号、断点击中次数

d [断点编号],删除断点

*b [行号] if [c++条件语句],条件断点。

查看:

p(print) [变量名],打印变量。

p *[数组名]@[size],打印数组前指定大小位置上的值。

disp(display) [变量名],追踪变量,每一步都打印此变量。

undisp 清除所有追踪变量。undisp [变量编号],删除指定的追踪变量(添加时会显示编号)。

更多高级操作:

*set var [语句],修改变量的值,例如 set var a[i]=9

posted @ 2026-05-07 07:28  dengchengyu  阅读(25)  评论(0)    收藏  举报