命令类型 |
命令 |
功能 |
启动/停止 |
run |
启动程序 |
|
r |
|
|
run 命令行参数 |
以传入参数的方式启动程序 |
|
run > 输出文件 |
将输出重定向到输出文件 |
|
continue |
继续运行,直到下一个断点 |
|
c |
|
|
kill |
停止程序 |
|
quit |
退出gdb |
源代码 |
list |
查看源代码 |
|
l |
|
|
list 行号 |
显示指定行号代码 |
|
list 函数名 |
显示指定函数的代码 |
|
list - |
往前显示代码 |
|
list 开始, 结束 |
显示指定区间的代码 |
|
list 文件名:行号 |
显示指定文件名的指定行代码 |
|
set listsize 数字 |
设置显示的代码行数 |
|
show listsize |
查看一次显示的代码行数 |
|
directory 目录名 |
添加目录到源代码搜索路径中 |
|
dir 目录名 |
|
|
show directories |
查看源代码搜索目录 |
|
directory |
|
|
dir |
清空添加到源代码搜索目录中的目录 |
断点管理 |
break |
断点命令 |
|
b |
|
|
break 函数名 |
为函数设置断点 |
|
break 代码行号 |
在某一代码行上设置断点 |
|
break 类名:函数名 |
在某个类的函数上设置断点 |
|
break 文件名:函数名 |
在文件名指定的函数上设置断点 |
|
break 文件名:行号 |
在文件名指定的代码行上设置断点 |
|
break *地址 |
在指定地址设置断点 |
|
break +偏移量 |
在当前代码行加上偏移量的位置设置断点 |
|
break -偏移量 |
在当前代码行减去偏移量的位置设置断点 |
|
break 行号 if条件 |
设置条件断点 |
|
tbreak |
设置临时断点 |
|
watch 表达式 |
添加观察点 |
|
clear |
删除所有断点 |
|
clear 函数 |
删除该函数的断点 |
|
clear 行号 |
删除行号对应的断点 |
|
delete |
删除所有断点,包括观察点和捕获点 |
|
d |
|
|
delete 断点编号 |
删除指定编号断点 |
|
delete 断点范围 |
删除指定范围断点 |
|
disable 断点范围 |
禁用指定范围的断点 |
|
enable 断点范围 |
启用指定范围断点 |
|
enable 断点编号 once |
启用指定断点一次 |
执行 |
continue 数量 |
继续执行,忽略指定数量的命中次数 |
|
finish |
跳出当前函数 |
|
step |
逐语句执行 |
|
s |
|
|
step 步数 |
逐语句执行步数 |
|
next |
逐过程执行 |
|
n |
|
|
next 数量 |
逐过程执行指定行数的代码 |
|
where |
显示当前执行的具体函数和代码行 |
调用栈 |
backtrace |
显示调用栈信息 |
|
bt |
|
|
bt 栈帧数 |
显示指定数量的栈帧(从小到大) |
|
bt -栈帧数 |
显示指定数量的栈帧(从大到小) |
|
backtrace full |
显示所有栈帧的局部变量 |
|
frame |
显示当前帧 |
|
frame 帧编号 |
切换帧到指定编号的帧 |
|
f 帧编号 |
|
|
up |
切换帧,将当前帧增大1 |
|
down |
切换帧,将当前帧减少1 |
|
up 帧数量 |
切换帧,将当前帧增大指定数量切换帧,将当前帧减少指定数量 |
|
down 帧数量 |
|
查看信息 |
info frame |
查看当前帧的信息 |
|
info args |
查看当前帧的参数 |
|
info locals |
查看当前帧的局部变量 |
|
info breakpoints |
查看所有断点信息 |
|
info break |
|
|
i b |
|
|
info break 断点编号 |
查看指定断点编号的断点信息 |
|
info watchpoints |
查看所有观察点信息 |
|
info registers |
查看所有整型寄存器信息 |
|
info threads |
查看所有线程信息 |
查看变量 |
x 地址 |
查看指定地址的内存 |
|
x /nfu 地址 |
以格式化的方式查看指定地址的内存 |
|
print 变量名 |
查看变量 |
|
p 变量名 |
|
|
p 文件名::变量名 |
查看指定文件的变量 |
|
ptype 变量 |
查看变量类型 |
|
ptype 数据类型 |
查看类型详细信息 |
gdb模式 |
set logging on |
设置日志开关 |
|
set logging off |
|
|
show logging |
|
|
set logging file 日志文件 |
设置日志文件名,默认名称为gdb.txt |
|
set print array on |
数组显示是否友好开关,默认是关闭的 |
|
set print array off |
|
|
show print array |
|
|
set print array-indexes on |
显示数组索引开关,默认是关闭的 |
|
set print array-indexes off |
|
|
show print array-indexes |
|
|
set print pretty on |
格式化结构体,默认是关闭的 |
|
set print pretty off |
|
|
show print pretty |
|
|
set print union on |
联合体开关,默认是关闭的 |
|
set print union off |
|
|
show print union |