【Linux】gdb调试器--

gdb:调试器

调试器的功能:

调试、观察程序的运行错误,通常目的是为了排查程序的运行错误

程序错误的分类:

编译错误、链接错误、运行时错误(运行时逻辑不对以及运行时程序崩溃)

调试的前提

程序必须是一个debug版本的程序; gcc/g++默认生成releas版本的程序,若要生成debug版本,则使用-g选项,例如:gcc -g test.c -o test.exe

可执行程序的分类:

debug-调试版:不对代码进行优化,并且加入调试程序信息;

release-发布版:不包含调试信息,并且对代码进行优化

gdb常用指令

gdb ./test.exe 表示调试test.exe文件

流程控制

run:直接运行程序

start:开始逐步调试

list:查看调试行附近代码 例:list test.c:12

next:逐过程–遇到函数直接运行完毕

step:逐语句–遇到函数则进入函数内部继续调试

until:直接运行到指定位置 例:until test.c :16 直接运行到16行

continue:继续从当前位置运行

break:打断点 例如:break test.c:14 在test.c文件的第14行处添加断点

info break:查看断点信息

delete:删除断点 例:delete id(后跟断点id,可用info break查看)

watch:变量监控断点–当变量发生变化的时候停止调试,后跟变量名

quit:退出gdb调试

内存控制

 print:查看嚯设置变量内容; 例:print var_name   print var=val

 backtrac:查看函数调用栈--通常用于检测程序运行时的崩溃位置

注意:以上大部分操作也可以用首字母简写实现,但有个别指令首字母存在歧义,不能简写,在实际操作时要注意。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值