GDB(GNU Debugger)是GCC的调试工具。其常用功能为:
(1)启动你的程序,并可以按照你的自定义的要求随心所欲的运行程序;
(2)可以让被调试的程序在你所指定的断点处停住;
(3)当程序被停住时,可以检查此时你的程序中所发生的事;
(4)动态的改变你的程序的执行环境。
启动gdb:使用命令gdb 程序名即可启动gdb调试,首先需使用gcc –g 源文件 –o 目标文件将调试信息加到可执行文件中。
gdb基本命令:
| 参数 | 意义 |
| backtrace(或bt) | 查看各级函数调用及参数 |
| breakpoint(或b) | 设置断点 |
| breakpoint(或b) linenumber | 在第linenumber行设置断点 |
| breakpoint(或b) functionname | 在函数functionname入口处设置断点 |
| breakpoint(或b) filename:linenumber | 在filename文件的第linenumber行设置断点 |
| list(或l) | 列出源代码,默认10行 |
| list(或l) linenumber | 显示以第linenumber行为中心的10行代码 |
| list(或l) functionname | 显示以functionname函数为中心的10行代码 |
| next(或n) | 单步执行,但不进入函数内部 |
| step(或s) | 单步执行,可进入函数内部 |
| quit(或q) | 退出gdb调试环境 |
| run(或r) | 开始执行程序 |
| print(或p) | 打印内部变量值 |
| info(或i) | 描述程序的状态 |
| info break(或info b) | 查看断点信息 |
示例:gdb调试程序



392

被折叠的 条评论
为什么被折叠?



