程序编译后,调试是十分重要的环节,如何更好更快的定位程序中的问题,
是加快程序开发进度的重要因素。Gdb 调试器是一款 GNU 开发组织并发布的 UNIX/Linux 下的程序调试工
具。
GDB调试
编译要点
对代码进行编译,注意一定要加上选项“-g”,这样编译出
的可执行代码中才包含调试信息,否则之后 Gdb 无法载入该可执行文件。
例如:gcc -g test.c -o test
编译成功,得到可执行文件test后,启动gdb调试,则gdb test
常用指令
- l (查看文件) ,查看文件,如果是多文件,则可以 l test.c:20从test.c第20行开始显示)
- b(设置断点) ,例如 b 5(在第5行设置断点),多文件可以 b test.c:5,也可以在通过函数名来设置断点,入 b func .
- info b(查看断点情况)
- r(运行代码)
- p(查看变量值),想查看i变量,则可以在相关i变量值可能发生改变的地方设置断点,然后 p i
- n / s (单步运行),它们之间的区别在于:若有函数调用的时候,“s”会进入该函数而“n”不会进入该函数。
- c(恢复程序运行)