【Linux】gcc编译工具,断点的设置,gdb调试

注意

1、在gcc编译过程中一定要加入选项 -g

2、只有在代码处于运行中在暂停状态时才能查看变量值;

3、设置断点后,程序在指定行之前停止。

总结

常用命令
l 查看源代码
b 行号 或函数名或f条件(==10)
info b 查看断点
d 断点号 d 无 删除所有断点
r 运行
p 变量名 查看变量值
set var变量名=变量值_新
S 进入函数内单步
n 不进入函数内单步
C 继续运行
q 退出gdb

主要内容

1、将当前目录下的myself.h文件移动到/usr/include/文件夹下

sudo mv myself.h /usr/include/

2、搜索 /usr/include/my*路径下 以my开头的所有文件

ls -l /usr/include/my*

3、gdb调试代码

  • gcc 语法错误
  • gdb 算法错误

3.1 进入gcb编译模式

要使用gdb编译器调试代码,执行gcc时要用操作-g

gcc f_gdb.c -g -o f_gdb

相当于是给了这个文件1个标注,这样才能使用下面这条语句调试

gdb f_gdb

在这里插入图片描述

3.2 查看源代码 l (是小写的L)

1、每次查看10行代码

l

2、 也可以指定行号,查看第Number行 前后共10行的代码

l Number

3.3 设置断点 Break b

3.3.1 设置行断点

在这里插入图片描述
假设我要在这行设置断点,fun()就不会被执行

b 13

在这里插入图片描述

3.3.2 条件断点
b 行数 if 判断语句

在这里插入图片描述

运行到 i=10时,再执行断点命令

3.3.3 设置函数断点
b 函数名

在这里插入图片描述

3.3.4 断点后按照预设的变量值运行
set var b=4

在这里插入图片描述

多了 4

3.4 查看设置的断点info b

info b

在这里插入图片描述
断点在文件f_gdb的main中 第13行

3.5 删除断点 Delete d 断点号

1.指定单个断点

在这里插入图片描述

d 1
2.所有点断 d
d

4、运行 调试 Run r

4.1 直接运行 到断点处停

r

停在该处,此时该处还未执行
在这里插入图片描述

4.2 单步执行 Next n 并 查看值的变化Print p

n

在这里插入图片描述

4.3 Continue 到断定后,继续往下运行c

c

在这里插入图片描述

此时停在了第2个断点处

4.4 Step 跳入函数内部进行单步 s

s

在这里插入图片描述

5、查看当前变量的值 p 变量名

p varNum

在这里插入图片描述

6、退出gdb调试 Quit q


每天进步一点点 笔记仅供自学,用来回看复习,不一定适合你,如有错误请指出。

  • 4
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

KevinGuo457

哈哈哈资助我买两包辣条叭

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

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

打赏作者

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

抵扣说明:

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

余额充值