gdb调试常用命令

一、显示

info args                          打印出当前函数的参数名及其值

info locals                        打印出当前函数中所有局部变量及其值

set print elements 0         打印的字符串长度不受限制

二、设置断点

break + 行号或函数名     break n/func     设置临时断点,到达后被自动删除

break + filename + 行号  break main.c:10    用于在指定文件对应行设置断点

break + 行号 + if + 条件  break 10 if i==3   用于设置条件断点,在循环中使用非常方便

三、堆栈

backtrace/bt  bt  用来打印栈帧指针,也可以在该命令后加上要打印的栈帧指针的个数,查看程序执行到此时,是经过哪些函数呼叫的程序,程序“调用堆栈”是当前函数之前的所有已调用函数的列表(包括当前函数)。每个函数及其变量都被分配了一个“帧”,最近调用的函数在 0 号帧中(“底部”帧)

frame        frame 1     用于打印指定栈帧

info reg     info reg     查看寄存器使用情况

info stack  info stack  查看堆栈使用情况

up/down    up/down    跳到上一层/下一层函数

四、多线程

info threads      显示当前可调试的所有线程

thread  ID         切换当前调试的线程为指定ID的线程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值