1. 生成调试的可执行文件
在生产可执行文件的命令的末尾加 -g
2. gdb中显示文件内容
- l 默认列出main文件
- l 文件名:n 显示文件第n行的以下的内容
- l 文件名:函数名 显示此文件下的函数内容
- 输入 l 后面直接按 回车 就会继续显示下面的内容
3. gdb设置断点
-
break 行号 或者 b 行号
-
条件断点 b 15 if i==5
如果i=5,才在15行停下 ,15行必须在for循环里面,否则不停 -
查看断点信息 i(info) b(break)
Num:断点的编号
Enb:断点一定是y 才有效,是n 是无效断点,不会停 -
删除断点 d(del) 断点对于编号
4. gdb运行程序
-
start 开始执行程序(只执行一步)
-
run(r)全速运行
-
next(n)单步执行
-
continue(c)继续执行,直到断点
-
step(s)进入函数内部,再 按 l 查看内容
-
p 变量 查看变量值
-
ptype 变量 查看变量类型
-
display 变量 :在运行过程中追踪变量的值(假如for循环,每执行一次循环可以打印出i、j值,更加直观)
-
info display :获取display的变量信息
-
undisplay 变量的编号:取消追踪的变量
-
u 跳出当前的循环
-
finish 跳出当前函数(必须执行完所有断点,或者删除函数内的所有断点)
-
set var i=10 :如在for循环中,i直接执行到i=10,for循环已经执行10次
-
quit(q)退出