不是很分得清什么样的情况存储在代码段内存,什么样的在栈内存?请大神讲解。

来源:4-4 操作系统对内存的管理

后会无期_

2017-06-01 18:24

按照老师视频的讲解我的理解是,调试的时候,刚开始打印两个函数名地址都是在,代码段;然后进入函数内部,打印函数内部变量的时候就到了栈内存了,请问是这样的吗?

还有一个疑问就是,如何打印出函数内部变量在代码段中的存储位置?

写回答 关注

2回答

  • 后会无期_
    2017-06-06 13:29:20

    谢谢,但是这样打印出来还是栈内存的呢~

  • popo3418953
    2017-06-06 10:08:26

    一般把源代码编译完成为目标文件的代码就存在代码段;

    调用的函数指针的顺序就存放在栈内存,可以理解为栈的先进后出就是函数的调用的顺序;

    打印函数内部变量在代码段的存储位置:首先要用bt 显示你的栈内存顺序,再用f + 编号,进去你想打印变量所在的函数里面,再用p+ &变量名字,即可打印;

Linux C语言指针与内存

指针-C语言的核心,代领大家对c语言有更加深刻的理解

116475 学习 · 250 问题

查看课程

相似问题