GDB简述
一、程序中加入调试信息:gcc -g -o a.ddebu a.c
二、启动gdb:gdb
三、常用命令
1.backtrace:显示程序中的当前位置和表示如何到达当前位置的栈跟踪(同义词:where)。
2.breakpoint:在程序中设置一个断点
3.cd:改变当前工作目录。
4.clear:删除刚才停止处的断点。
5.commands:命中断点时,列出将要执行的命令。
6.continue:从断点开始继续执行。
7.delete:删除一个断点或监测点,也可与其他命令一起使用。
8.display:程序停止时显示变量和表达式。
9.down:下移栈帧,使得另一个函数成为当前函数。
10.frame:选择下一条continue命令的帧。
11.info:显示与该程序有关的各种信息。
12.info break:显示当前断点清单,包括到达断点处的次数等。
13.info files:显示被调试文件的详细信息。
14.info func:显示所有的函数名称。
15.info local:显示当前函数中的局部变量信息。
16.info prog:显示被调试程序的执行状态。
17.info var:显示所有的全局和静态变量名称。
18.jump:在源程序中的另一点开始运行。
19.kill:异常终止在gdb控制下运行的程序。
20.list:列出相应于正在执行的程序的源文件内容
21.next:执行下一个源程序行,人而执行其整体中的一个函数。
22.print.显示变量或表达式的值。
23.pwd:显示当前工作目录。
24.pype:显示一个数据结构(如一个结构或C++类)的内容.
25.quit:退出gdb.
26.reverse-search:在源文件中反向搜索正规表达式。
27.run:执行该程序。
28.search:在源文件中搜索正规表达式。
29.set variable:给变量赋值。
30.signal:将一个信号发送到正在运行的进程。
31.step:执行下一个源程序行,必要时进入下一个函数。
32.undisplay display:命令的反命令,不要显示表达式。
33.until:结束当前循环。
34.up:上移栈帧,使另一个函数成为当前函数。
35.watch:在程序中设置一个监测点(即数据断点);
36.whatis:显示变量或函数类型。
四、习惯性操作
1.导入文件:file /test.debug
2.查看文件:list
3.加入断点行数:break 6
4.运行程序:run
5.运行到第一个断点,step,程序运行一步
6.显示当前变量的值:pirnt **
7.退出:q
原文地址:https://www.cnblogs.com/sail/p/9908497.html