使用gdb调试注意事项

版权声明:允许转载,请注明文章出处 https://blog.csdn.net/Vickers_xiaowei/article/details/86406708

1、编译过程一定要加-g选项:因为在Linux系统下,默认生成的是release(不加调试信息)版本的可执行程序,如果不加-g,则不能调试。例如编译hello.c生成hello的debug版本;

gcc -g hello.c -o hello

2、在开启gdb调试不想看到那么一大堆版本信息可以加-q,例如调试hello

gdb -q hello

3、常用选项:

run/r:执行程序到结束 continue:从当前位置开始连续而非单步执行程序到结束
breaktrace(或bt):查看各级函数调⽤及参数
start:开始单步调试,next/n下一步
step/s:进入函数,类似于VS里的F11
finish:执⾏到当前函数返回,然后挺下来等待命令

在这里插入图片描述

break/b:打断点,可以加行号或者函数

在这里插入图片描述

info break/i b:查看断点信息
info local:查看当前栈帧局部变量的值
delete/d breakpoints/number:删除所有断点/删除断点编号为number的断点
print/p:打印表达式的值,通过表达式可以修改变量的值或者调⽤函数
p 变量:打印变量值。
q/ctrl+d:退出gdb

猜你喜欢

转载自blog.csdn.net/Vickers_xiaowei/article/details/86406708
今日推荐