GDB自学十分钟入门笔记

GDB Linux 下Linux程序调试器
只需掌握十几个命令就好
主要介绍了 流程,启动,查看变量的值,断点,查看代码,单步调试问题
在这里插入图片描述cat(英文全拼:concatenate)linux命令用于连接文件并打印到标准输出设备上

就是打开.c文件然后把程序放到终端上

然后进行编译程序 命令 gcc test.c
生成可执行文件
下面在编译过程中引入调试信息
gcc test.c -g

不加-o 默认编译出来的名字a.out
第一种gdb的启动方法
在这里插入图片描述启动后的界面

(利用gdb进行执行调试编译好的可执行文件)

之后就是开始执行可执行文件
输入 run
也可以输入简写字母r

在这里插入图片描述输入quit退出gdb 也可以输入简写 q

如何进入gdb模式

在终端直接输入gdb 也可以进入gdb模式
在这里插入图片描述

**gdb filename
也可以用file filename来加载程序,**即表示
提示说明gdb成功读取了可执行文件test中的调试信息,已经准备好接受用户具体的调试命令了。

输入list命令或直接输入l来显示源代码

在这里插入图片描述显示指定行前后的源代码内容
l+行号

如果你在执行了一部分的时候 输入l会显示
接下来要执行的代码
continue 程序继续执行 简写 c

break 断点 b 加行数 或者b 文件名: 行数
如果程序执行完毕需要用r来重新启动
在这里插入图片描述run r 开始运行程序, 程序运行到断点的位置会停下来,如果没有遇到断点,程序一直运行下去。

单步调试指令 next
简写n
执行当前语句,如果该语句为函数调用则不会进入函数内部
在这里插入图片描述step
执行当前行语句,如果该语句为函数调用,则进入函数执行其中的第一条语句。 注意了,如果函数是库函数或第三方提供的函数,用s也是进不去的,因为没有源代码,如果是您自定义的函数,只要有源码就可以进去。
在这里插入图片描述

如果想继续往下执行那就敲enter
它就继续往下执行下一行
在这里插入图片描述

这个也和Linux终端一样支持方向键上键重复之前输入过的指令

print p显示值
你要是想看某个变量的值就 p然后加变量名

在这里插入图片描述在这里插入图片描述如果想查询设置了几个断点可以用 info b

在这里插入图片描述后面那个是简写
同样也可以查看寄存器的信息
在这里插入图片描述
如何删除断点
delete 删除所有的断点

删除特定的断点 delete 断点号
就上面你查询的那个序号

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值