Linux基础教程:3、gdb调试工具的使用

我们在编写完c程序之后出现错误通常会启动调试来查找错误在哪里然后更正,同样,linux也提供了这样的一个工具来帮助我们调试C语言程序,他就是gdb:

1、调试前面的准备工作

在我们写好一个程序之后,可以使用cat命令来查看我们的代码:

cat 文件名

如果想要一个程序可以让我们调试,我们需要让这个程序具备调试的信息,如果让编译文件具有调试信息呢?

很简单,只需要在编译的指令后加上一个-g

gcc 自己编写的C语言文件 -o 输出的可执行文件 -g

比如我这里的:gcc mutifytest.c -o mutify -g

可以看到这个编译出来的文件还是比较大的,因为里面存在调试信息;

这是程序编译的结果;

2、gdb的使用 

我们使用gdb命令来启动调试:

gdb 带有调试信息的可执行文件

在弹出的gdb模式下面我们可以输入下面的常用调试命令来实现我们的调试功能:

1)、b  行号 : 在行号前面打一个断点(这个行号就是使用l 命令看到的行号);

2)、r : 开始调试(就是run的意思);

3)、n : 往下执行,不会进入函数;

4)、step : 往下执行,一步一步执行,会进入函数;

5)、l : 显示代码十行,如果重复输入,将会往后显示直至代码结束,这个显示数量可以通过set list进行调整:

这里我设置为显示5行,然后在使用l显示,注意如果启动了调试后设置失败可以重新进入调试在设置: 

 

不过需要注意只是当前调试生效,退出之后就无效了;

6、quit : 可以退出调试

 

7、display:可以再调试的时候使用,自动打印当前位置的变量值

 

display 变量值

 8、条件断点

b if 条件

条件断点也是非常常用的,我们的以设置在变量满足某种情况的时候打个断点;

9、i b : 显示当前所有断点的信息;

 这里可以看到我们打的所有断点的信息,包括编号为2的条件断点1 == 4;

 那么这就是gdb调试工具的简单使用;

猜你喜欢

转载自blog.csdn.net/aiwanchengxu/article/details/127423220