Linux:GDB调试指南(什么是GDB?GDB如何使用?)

GDB

GBD概念

基于gcc的debug调试。

GDB是GUN开源组织发布的一款强大的unix/linux下所谓程序调试工具。

GDB主要功能

1、启动程序,按照程序员的要求运行程序。

2、可以让程序在程序员设置的断点处停下来。

3、在重新停止的情况下,可以查看重新中的变量等信息。

4、动态改变程序的运行环境

需要注意的是:
程序在编译的时候需要跟上-g参数,因为我们默认编译出来的版本是发布版本(Release),会删除一切调试可用信息,便于减小可执行程序的体积,但是我们调试的时候,我们需要保留调试信息,所以需要使用到调试版本(DeBug),所以需要指定参数-g.

GDB的启动

GDB常见的启动方式

在命令行中运行:

(1)gdb:

file <filename>

如果调试的程序需要命令行参数还需要执行如下指令:

set args arg1 arg2 ...

(2) gdb <filename> ;

如果调试的程序需要命令行参数则执行如下格式指令:

gdb --args <filename> arg1 arg2 ...
GDB的常用命令
GDB 查看源代码指令------list (l)
set listsize 20                  #每次list显示指定区域的20行代码,默认10行
show listsizelist linenumber     # 显示 linenumber附近的代码
list 50                          # 显示当前源文件的第50行的附近代码
list function                    # 显示函数代码
list test.c:30                   # 显示指定源文件的第30行的附近代码
list +/-                         # 向后/前显示源代码
list <first>,<last>              # 显示first ,last之间的内容
list 100,200                     # 显示当前源文件代码行100200间的行
GDB 查看设置------info
info registers                   # 查看寄存器信息
info frame                       # 查看栈信息(帧信息)
info locals                      # 显示当前函数的所有局部变量名及其值
info break/b                     # 查看断点信息
info args                        # 显示当前函数的参数名及其值
info prog                        # 查看调试程序的执行状态
info files     
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xb115

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值