社区
C++ 语言
帖子详情
怎么知道一个变量在内存中的位置(区)
nlfd2007
2008-04-09 10:04:53
最近在学习内存分配方面的知识,涉及到了内存的几个区:代码区,数据区(堆,栈等)。我写了一个程序,想知道程序中某个变量是在栈中还是在堆中,或者在全局存储区、代码区,那我应该通过什么方法来确认他们到底在内存的哪个区呢,最好不要去看汇编代码,请各位高人指点一下,谢谢。
...全文
278
5
打赏
收藏
怎么知道一个变量在内存中的位置(区)
最近在学习内存分配方面的知识,涉及到了内存的几个区:代码区,数据区(堆,栈等)。我写了一个程序,想知道程序中某个变量是在栈中还是在堆中,或者在全局存储区、代码区,那我应该通过什么方法来确认他们到底在内存的哪个区呢,最好不要去看汇编代码,请各位高人指点一下,谢谢。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jinwei1984
2008-04-10
打赏
举报
回复
& 取地址,
有些是挨着存放的,就可以推测是哪个区了嘛。。。
qmm161
2008-04-10
打赏
举报
回复
link 的时候把 map 文件输出,你就知道了,非常清楚!
至于怎么设置 link 你 google 一下就知道了
nlfd2007
2008-04-09
打赏
举报
回复
但有些复杂的我就看不出来了,所以我想知道有什么方法可以确认一下吗,就象可以用typeid来确认类型一样。这个变量所属的区不知怎么搞,或者说通过什么命令/代码能得出堆区和栈区内所存储的值,非常感谢
jieleiping
2008-04-09
打赏
举报
回复
你自己定义的你应该直到在什么区撒。。。
至于内存地址,完全可以用&得到嘛。。。
hastings
2008-04-09
打赏
举报
回复
这个看看就看出来了.
变量
的存储
位置
堆
区
和栈
区
分析
目录:一. 什么是栈,什么是堆二. 什么是栈
区
,什么是堆
区
三.
变量
存放的
位置
四. 举例五. 栈
区
和堆
区
的关系六. 总结 一. 什么是栈,什么是堆 栈(stack): 栈是一种先进后出的数据结构,在栈
中
被删除的总是最近被插入的元素和队列刚好相反。 堆(heap): 堆是
一个
数组,它可以被看成
一个
近似的完全二叉树,树上的每
一个
节点对应数组
中
的
一个
元素。除了最底层之外,该树是完全充满的,而且是从左向右...
【C++】
内存
五大
区
详解
从操作系统的角度来看待
内存
的分
区
C/C++语言的
内存
四
区
(栈
区
,堆
区
,全局
区
,代码
区
)(附图详解)
在执行
一个
C/C++语言程序时,此程序将拥有唯一的“
内存
四
区
”——栈
区
、堆
区
、全局
区
、代码
区
。每个程序都有唯一的四个
内存
区
域,我们需要熟悉和了解各个
区
域的特性,例如存储什么类型的数据, 有谁去申请开辟,,又有谁去管理释放。 流程说明: 1、操作系统把物理硬盘代码load到
内存
2、操作系统把c代码分成四个
区
3、操作系统找到main函数入口执行 静态
区
,代码
区
,堆
区
,栈
区
存储地址依次下降 ...
C语言
变量
在
内存
中
的
位置
——局部
变量
、全局
变量
、静态
变量
C语言
中
的
变量
根据其类型和生命周期被分配到
内存
的不同
区
域。栈
区
用于存放局部
变量
,堆
区
用于动态分配的
内存
,全局
区
(静态
区
)存放全局和静态
变量
,常量
区
存储常量,代码
区
存放程序代码。栈
区
由编译器自动管理,堆
区
需要程序员手动分配和释放。全局
区
和常量
区
在程序结束时由系统释放。通过Keil工具对STM32系统的验证,可以观察到不同
变量
在
内存
中
的具体分布情况,如栈
区
变量
的连续地址、堆
区
的不连续地址分配,以及全局
变量
和静态
变量
在.data和.bss段的存储。这些
内存
区
域的管理对于程序的性能和稳定性至关重要。
java
中
静态
变量
在
内存
中
的
位置
java程序在
内存
中
的存储分配情况:一、堆
区
: 1.存储的全部是对象,每个对象都包含
一个
与之对应的class的信息。(class的目的是得到操作指令) 2.jvm只有
一个
堆
区
(heap)被所有线程共享,堆
中
不存放基本类型和对象引用,只存放对象本身 栈
区
: 1.每个线程包含
一个
栈
区
,栈
中
只保存基础数据类型的对象和自定义对象的引用(不是对象),对象都存放在堆
区
中
2.每个栈
中
的数据(原始类型...
C++ 语言
65,210
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章