博客
关于我
GDB命令—jump/return/call/disassemble
阅读量:391 次
发布时间:2019-03-05

本文共 529 字,大约阅读时间需要 1 分钟。

GDB 常用命令指南

1. Jump 命令

通常情况下,程序会按照代码的执行顺序依次运行。但在调试过程中,有时我们需要跳转到代码的特定位置来观察程序的行为。GDB 提供了 jump 命令,可以用来指定下一步要执行的指令。需要注意的是,jump 命令不会改变程序栈中的内容。如果你使用 jump 从一个函数跳转到另一个函数,当目标函数执行完返回时,可能会导致栈操作错误。因此,建议只在同一个函数内使用 jump 命令。

2. Return 命令

在调试过程中,当程序触发断点但尚未执行完所有语句时,可以使用 return 命令强制函数忽略未执行的语句并返回。return 命令可以取消当前函数的执行,并立即返回。如果在 return 后指定了表达式,该表达式的值会被作为函数的返回值输出。

3. Call 命令

call 命令用于强制调用某个函数。执行该命令后,GDB 会显示函数的返回值(如果函数返回值不是 void 类型)。这是调试程序执行路径的一种强有力的工具。

4. Disassemble 命令

disassemble 命令用于反汇编,能够展示当前执行点的机器码对应的源代码。它实际上是将内存中的指令转化为可读的格式,从而帮助调试人员分析程序的运行。

转载地址:http://bgdzz.baihongyu.com/

你可能感兴趣的文章
《带你装B,带你飞》pytest成魔之路4 - fixture 之大解剖
查看>>
互联网App应用程序测试流程及测试总结
查看>>
根据轨迹分析出用户家在哪
查看>>
PostgreSQL查询表名称及表结构
查看>>
linux中使用awk命令
查看>>
如何使用google搜索?
查看>>
Redis分布式锁的正确实现方式
查看>>
设计模式-抽象工厂模式
查看>>
IntelliJ IDEA 中,项目文件右键菜单没有svn选项解决办法
查看>>
IDEA 调试Java代码的两个技巧
查看>>
Vue 数组和对象更新,但视图未更新,背后的故事
查看>>
剑指Offer面试题:9.二进制中1的个数
查看>>
《你是在做牛做马还是在做主管》- 读书笔记
查看>>
.NET Core微服务之基于Steeltoe使用Spring Cloud Config统一管理配置
查看>>
重新温习软件设计之路(4)
查看>>
MySQL数据库与python交互
查看>>
python如何对字符串进行html转义与反转义?
查看>>
微软XAML Studio - WPF, Sliverlight, Xamarin, UWP等技术开发者的福音
查看>>
开发小白也毫无压力的hexo静态博客建站全攻略 - 躺坑后亲诉心路历程
查看>>
golang基础--类型与变量
查看>>