gdb函数相关7——选择函数堆栈帧
测试代码
#include <stdio.h>int func1(int a) {return 2 * a;
}int func2(int a) {int c = 0;c = 2 * func1(a);return c;
}int func3(int a) {int c = 0;c = 2 * func2(a);return c;
}int main (int argc, char *argv[]) {printf("%d\n", func3(10));return 0;
}
测试过程
在调试时的程序暂停过程中,可以使用命令
frame n
来选择函数堆栈帧,其中n为层数
可以看到程序暂停后,最内层的函数帧为第0帧。
执行frame 2命令后,当前堆栈帧变成了func3的函数帧
可以使用
i frame
命令查看当前函数帧的相关信息
可以看到,func3要去调用func2,调用func3的地址是0x7fffffffdec0,
它要去调用地址为0x7fffffffdec0的函数func2
于是,如果你想通过函数帧地址切换到func2的函数堆栈帧
可以使用命令frame 0x7fffffffdec0
gdb函数相关7——选择函数堆栈帧相关推荐
- Linux下函数调用堆栈帧的详细解释
http://www.ibm.com/developerworks/cn/linux/l-overflow/ 本文首先向读者讲解了Linux下进程地址空间的布局以及进程堆栈帧的结构,然后在此基础上介绍 ...
- Linux下函数调用堆栈帧的详细解释【转】
转自:http://blog.chinaunix.net/uid-30339363-id-5116170.html 原文地址: Linux下函数调用堆栈帧的详细解释 作者:cssjtuer http: ...
- PowerPC构架应用程序二进制接口(ABI)及堆栈帧详解
第一部分 概述 应用程序二进制接口(ABI-Application Binary Interface)定义了一组在PowerPC系统软件上编译应用程序所需要遵循的一套规则.主要包括基本数据类型,通用寄 ...
- linux下gdb所有实用方法
为什么80%的码农都做不了架构师?>>> 显示gdb版本信息 技巧 使用gdb时,如果想查看gdb版本信息,可以使用"show version"命令: 显示 ...
- 使用GDB(二):调试程序常用命令
文章目录 一.GDB配置文件 二.启动程序/挂载进程 三.改变变量和控制流程 四.打印表达式(变量)信息 五.永久/条件/一次/自动断点操作 六.查看源码及其编译后的相关信息 七.反汇编相关 八.其它 ...
- linux下gdb单步调试
用 GDB调试程序 GDB 概述 ---- GDB 是 GNU开源组织发布的一个强大的 UNIX下的程序调试工具.或许,各位比较喜欢那种图形界面方式的,像 VC. BCB等 IDE的调试,但如果你是在 ...
- GNU开发工具的使用方法
GNU开发工具的使用方法 一.vi编辑器使用方法 1.1 vi编辑器 1.2 vi的基本命令 二.makefile的编写 2.1 makefile简介 2.2 make命令 2.3 隐含规则 三.gc ...
- C/C++中手动获取调用堆栈【转】
转自:http://blog.csdn.net/kevinlynx/article/details/39269507 版权声明:本文为博主原创文章,未经博主允许不得转载. 当我们的程序core掉之后, ...
- Git/Ctags/Vim/GDB基础笔记
>>>>>>>>>>>>>>>>>>>>>>>>> ...
最新文章
- 用QQ提问的技巧,用了之后可以提高效率,呵呵。
- 数据流通实现“可用不可见”?腾讯巧夺“天工”
- mysql数据库优化课程---16、mysql慢查询和优化表空间
- Linux基础维护——笔记
- 贴片铝电容识别及型号_贴片钽电容封装及规格和参数资料
- 20172327 2017-2018-2 《程序设计与数据结构》第五周学习总结
- linux 脚本学习--细节问题
- 电磁波传播相位是否会变化_相位常数β与波数k是一回事吗?
- 用户自定义排序的几种实现思路
- 中位数(Median)
- jquery图表统计插件-highcharts详解
- 设计模式(1)——策略模式
- 11/27 记事本
- Linux-Discuz安装LAMP
- 翻译: 如何使用Xcode构建xcframework
- Dbgview - 签名无效
- XtraReport通过动态设置打印模板进行标签打印
- 【Web】多读书多看报
- 替换word中手动换行(软回车)为段落标记(硬回车)
- 基于SpringBoot的汽车租赁管理系统
热门文章
- 超越预期的精彩,2020深圳高博会开幕在即!
- ddr4 dqs 频率_DDR4各种技术参数详解
- 数字地 模拟地 电源地 屏蔽地
- 更新被拒绝,因为远程仓库包含您本地尚不存在的提交
- Ubuntu 16.04解决双系统时间冲突问题
- NanoPi NEO小试牛刀(二)
- 华为手机鸿蒙系统有什么优点和缺点,有多少人愿意亲身体验鸿蒙系统?华为自研系统,有哪些优势?...
- div内嵌网页ajax,Div里面载入另一个页面的实现(取代框架)(AJax)(转)
- Python you-get 库的使用方法
- 史上最全Elasticsearch学习