GDB 命令参考手册

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  

命  令

缩写

用  法

作  用

help h h command 显示命令的帮助
run r r [args] 运行要调试的程序 args为要运行程序的参数
step s s [n] 步进,n为步进次数。如果调用了某个函数,会跳入函数内部。
next n n [n] 下一步,n为下一步的次数
continue c c 继续执行程序
list l l / l+ / l- 列出源码
break b b address 在地址address上设置断点
b function 此命令用来在某个函数上设置断点。
b linenum 在行号为linenum的行上设置断点。程序在运行到此行之前停止
b +offset
b -offset
在当前程序运行到的前几行或后几行设置断点。offset为行号
b filename:linenum 在文件名为filename的原文件的第linenum行设置断点
b filename:function 在文件名为filename的原文件的名为function的函数上设置断点。当你的多个文件中可能含有相同的函数名时必须给出文件名
watch w w exp 监视表达式的值
kill k k 结束当前调试的程序
print p p exp 打印表达式的值
    p/fmt exp fmt为以下值
x 十六进制    d 十进制
u 无符号数    o 八进制
t 二进制      a 十六进制打印
c 字符格式    f 浮点数
output o o exp 同print,但是不输出下一行的语句
ptype   ptype struct 输出一个struct结构的定义
whatis   whatis var 命令可以显示某个变量的类型
x x/(length)(format)(size) addr
x/6(o/d/x/u/c/t)(b/h/w)
例如:x/4xw
按一定格式显示内存地址或变量的值
pwd   pwd 显示当前路径
delete d d num 删除编号为num的断点和监视
disable   disable n 编号为n的断点暂时无效
enable   enable n 与disable 相反
display   display expr 暂停,步进时自动显示表达式的值
finish  

 

执行直到函数返回 执行直到当前stack返回
return  

 

强制从当前函数返回
where     命令用来查看执行的代码在什么地方中止
backtrace bt   显示函数调用得所有栈框架(stack frames)的 踪迹和当前函数的参数的值。
quit q   退出调试程序
frame      
shell   shell ls 执行shell命令
make     不退出gdb而重新编译生成可执行文件
disassemble     显示反汇编代码
thread   thread thread_no 用来在线程之间的切换
set   set width 70 就是把标准屏幕设为70列
  set var=54 设置变量的值。
forward/search search string 从当前行向后查找匹配某个字符串的程序行
reverse-search   forward/search相反,向前查找字符串。使用格式同上
up/down     上移/下移栈帧,使另一函数成为当前函数
info i i breakpoint 显示当前断点列表
  i reg[ister] 显示寄存器信息
  i threads 显示线程信息
  i func 显示所有的函数名
i local 显示当前函数的所有局部变量的信息
i prog 显示调试程序的执行状态
i watch exp 为表达式(变量)exp设置一个观察点。一但表达式值有变化时,马上停住程序。
i proc 显示进程的概要信息
info proc mappings  报告你进程所能访问的地址范围。
info proc times 你进程和子进程的开始时间,用户时间(user CPU time),和系统CPU时间。
info proc id 报告有关进程id的信息
info proc status 报告你进程的一般状态信息。如果进程停止了。这个报告还包括停止的原因和收到的信号
info proc all 显示上面proc命令这些命令返回的所有信息