【linux GDB】linux下GDB调试器_学习笔记_003

本文介绍GDB调试器的功能,包括启动、设置断点、单步执行等操作,并演示如何使用这些功能来定位和修复程序中的段错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

GDB调试器

 

1.GDB主要完成以下三方面的功能:

(1)启动被调试程序;

(2)让被调试的程序在指定位置停住;

(3)当程序被停住时,可以检查程序状态——变量值。

2.调试步骤:

以如下程序为例(文件名为demo.c)


(1)gcc –g demo.c –o demo(生成可调试文件)

(2)gdb demo(启动调试文件)


在(gdb)光标处输入命令:

常用命令:


r(run):运行程序


l(list):查看代码 [l 1(行号)],表示从第1行开始显示,按回车继续显示


b(break): [b 18(行号)],在第18行设置断点


n(next):单步执行(不可进入子函数内部)

p(print): [p i]显示i当前状态

info b:查看断点编号

d(delete): [d 1(断点编号)]删除相应编号断点

c(continue):跳过第1个断点继续执行程序,在下一个断点停住

q(quit):退出调试

 

b 18 if i=3:在第18行,i=3时停住

b add_sum:在调用函数时停住

finish(不可用简写f):在结束当前函数后停止执行

step:单步执行(可进入子函数)

 

3.段错误调试

(1)段错误:内存错误,编译通过,执行过程中出错

                        该程序通过编译,执行过程中出现段错误


(2)启动GDB调试,运行,程序停在段错误处


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值