一、GDB主要帮忙你完成下面四个方面的功能:
1、启动你的程序,可以按照你的自定义的要求随心所欲的运行程序。
2、可让被调试的程序在你所指定的调置的断点处停住。(断点可以是条件表达式)
3、当程序被停住时,可以检查此时你的程序中所发生的事。
4、动态的改变你程序的执行环境。
二、gdb调试命令
以test.c文件举例
1、正常编译c文件的命令是gcc test.c -o test,如果要进行gdb调试,编译命令应该加上-g : gcc -g test.c -o test
2、启动调试:gdb test
3、设置断点: 使用break命令设置断点,该命令可以简写位 b
然后使用break/b命令给程序添加断点,共有下面几种情况:
① b 函数名 :在某函数入口处添加断点;
② b 行号 : 在指定行添加断点
③ b 文件名 :行号 在指定文件的指定行添加断点
④ b 行号 : if 条件 当条件为真时,指定行号处断点生效,例 b 5 if i=10 ,当i=10时,第5行断点生效
删除断点:delete 断点编号
4、查看设置的所有断点: info break
5、run : 运行代码,遇到第一个断点之后停下
6、单步执行和继续执行命令
next : 执行下一行命令
continue : 运行到下一个断点
7、设置监视点 watch 表达式
删除监视点 delete 监视点编号
8、结束调试 quit (可缩写为q)
9、list 命令:在gdb模式下查看代码
命令总结