linux gdb 基本调试命令介绍

常见命令用法整体概述

  1. 启动gdb调试方法: gdb 可执行文件名
  2. list :简写l ,查看源代码,默认一次10行
  3. run :简写r,开始运行程序,直到遇见断点
  4. break 行号:简写b,设置断点在某行
  5. continue:简写c,从当前断点继续向后执行
  6. quit:简写q,退出gdb调试
  7. next:简写n,按行调试,不进入函数体
  8. step:简写s,单步调试,碰到函数进入函数体
  9. until:跳出当前循环体代码,until + 行号,执行到当前行
  10. finish:跳出当前执行的函数体,并打印堆栈和返回值等信息到界面
  11. call 函数名(参数):调用程序中的函数,并向函数传参
  12. print 表达式:打印表达式计算的结果,这里的表达式可以是变量或者任何合法的函数或者算式
  13. display 表达式:每次单步执行后,都展示此时表达式的计算结果
  14. watch 表达式:设置一个监视,当表达式计算结果发生变化,终止gdb调试过程
  15. layout:分割窗口,可以边测试,边显示代码到窗口
  16. where/bt :当前运行的堆栈列表

基本命令的扩展

1. list 查看源码

list 不带参数 :默认显示10行代码,后续还不带参数接着上一段代码继续显示10行
list 行号 :以当前行为中心,上下扩展共计10行
list 函数名:显示当前函数所在的代码

2. break 设置断点

break 行号:在第n行处设置断点
b fn1 if 条件表达式**:条件断点设置
break fun:在函数入口设置断点
delete n:删除第n个断点,n是断点的编号
disable n:暂停第n个断点
enable n:开启第n个断点
clear 行号:清除该行断点
info breakpoints :显示当前设置的所有断点信息
delete breakpoints:清除所有断点

3. 查看运行时数据

where/bt:查看运行时堆栈列表
bt backtrace:查看当前所在堆栈信息
up/down :改变堆栈显示的深度
set args 参数:指定运行时的参数
show args:查看设置好的参数
info program: 来查看程序是否在运行,进程号,被暂停的原因

4. layout 分割窗口

layout:分割窗口,可以边测试,边显示代码到窗口
layout src:显示源代码窗口
layout asm:显示反汇编窗口
layout regs:显示源代码/反汇编和CPU寄存器窗口
layout split:显示源代码和反汇编窗口
Ctrl + L:刷新窗口

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值