编译时要加-g
- gdb 可执行文件名
在gdb内就可以:
- file 可执行文件名
- start
- break n:在n行设置断点
- break 函数名称:程序进入指定功能函数时停止运行
- break 行号/函数名称 if 条件:符合if语句条件时,运行到指定位置停止运行
- run:运行程序
- continue:继续运行程序
- next:单步执行程序语句
- step:进入子函数
- print:显示变量的值,print a=n,给a赋值n
- print $:显示给定序号的前一个序号的值
- print $$:显示给定序号的前两个序号的值
- print 开始表达式@要打印的连续空间大小:用于打印数组,开始表达式例子,a[2]
- enable:enable命令可以恢复暂时不起作用的断点,例如程序已经运行完了第二个断点,反过来还想运行第一个断点处,此时可以使用enable命令。(多个断点加空格)enable后run
- disable:使断点失效,然后用continue命令继续执行程序
- delect:清除断点,需要标明断点的编号,没有提示信息
- clear:清除断点,需要标明断点所在的行号,会有提示信息
- display:用于显示表达式的值,该命令每当程序运行到断点处就会显示表达式的值