不会飞的章鱼

熟能生巧,勤能补拙;念念不忘,必有回响。

Linux下使用gcc调试c语言程序

介绍

看到一些用C语言写的数据结构的程序,很不错,想用gcc调试一下程序,增进记忆,本文记录学习和使用gcc调试C程序的过程。

使用gcc

1,生成可调试程序test

1
gcc -o test -g BinarySortTree.c

2,gdb开始调试

1
gdb test

3,设置断点

这里可以设置行数,或者函数名

1
break 118

4,运行程序

1
run

5,调试

  • n,一行一行的执行
  • c,continue-执行到下一个断点处
  • print,打印出变量信息

6,退出调试

quit

1
q

其他

gdb中如果遇到困惑,可以输入help获取相关帮助信息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
List of classes of commands:

aliases -- Aliases of other commands
breakpoints -- Making program stop at certain points
data -- Examining data
files -- Specifying and examining files
internals -- Maintenance commands
obscure -- Obscure features
running -- Running the program
stack -- Examining the stack
status -- Status inquiries
support -- Support facilities
tracepoints -- Tracing of program execution without stopping the program
user-defined -- User-defined commands

Type "help" followed by a class name for a list of commands in that class.
Type "help all" for the list of all commands.
Type "help" followed by command name for full documentation.
Type "apropos word" to search for commands related to "word".
Command name abbreviations are allowed if unambiguous.

小结

本文简单记录了使用gdb的常用命令,个人比较喜欢这种用命令行的方式去调试程序,当然也可以去VSCode等软件去做。

------ 本文结束------
如果本篇文章对你有帮助,可以给作者加个鸡腿~(*^__^*),感谢鼓励与支持!