怎么知道一个变量在内存中的位置(区)

nlfd2007 2008-04-09 10:04:53
最近在学习内存分配方面的知识,涉及到了内存的几个区:代码区,数据区(堆,栈等)。我写了一个程序,想知道程序中某个变量是在栈中还是在堆中,或者在全局存储区、代码区,那我应该通过什么方法来确认他们到底在内存的哪个区呢,最好不要去看汇编代码,请各位高人指点一下,谢谢。
...全文
162 5 打赏 收藏 举报
写回复
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
  • 打赏
  • 举报
回复
这个看看就看出来了.
相关推荐
发帖
C++ 语言

6.3w+

社区成员

C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
帖子事件
创建了帖子
2008-04-09 10:04
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下