简单GDB调试

GDB下载

使用yum工具直接下载
在这里插入图片描述

生成可用gdb调试的可执行程序

-g 会保留源文件中的函数名和变量名

启动gdb
gdb 可执行程序名
set args xxx xxx 给程序传参
查看程序中的源代码
当前文件

l(list)
l 行号
l 函数名

非当前文件

l 文件名:行号
l 文件名:函数名

查看当前可显示的行数

show listsize (默认是显示10行)

设置显示的行数

set listsize n

断点
设置断点

b(break) 行号

查看断点

i(info) b

删除断点

d(delete) num(断点的编号)

删除多个

d num1 num2
d num1-num2

设置断点无效

dis num

恢复断点有效

ena num

设置条件断点

b n(行号) if (条件)

调试
打印变量的值

p 变量名

打印变量的类型

ptype 变量名

向下单步调试

n(next) 不会进入函数体
s(step) 会进入到函数体内部
finish 跳出函数体
  如果出不去,可能在函数体中有断点,如果有要删除或者设置其无效

一次走多步,直到下一个断点

c(continue)

变量的自动显示

display 变量名 变量自动显示
undisplay 编号 取消变量自动显示
i(info) display 查看自动显示的变量编号

从循环中直接跳出

until
  和finish一样,循环中不能有断点

直接设置变量等于某一个值

set var 变量名=value
  在程序中对应的值也会发生改变

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值