关于结构体存在栈中还是堆中的问题。

a653560991 2015-06-23 10:14:14
如题,想知道结构体是存储在栈中还是堆中的。结构体变量存在栈中还是堆中?
还有,C语言中结构体声明的时候是不是和C++中的Class一样不分配内存只是告诉编译器类型?
C++中的结构体是不是也不分配内存,只声明数据类型?
...全文
3545 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
全期英雄 2017-06-28
  • 打赏
  • 举报
回复
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。 转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。 转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。 转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。 转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。 转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。 转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。 转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。
赵4老师 2015-06-24
  • 打赏
  • 举报
回复
VMMap 是进程虚拟和物理内存分析实用工具。http://technet.microsoft.com/zh-cn/sysinternals/dd535533
a653560991 2015-06-24
  • 打赏
  • 举报
回复
引用 1 楼 zhangxiangDavaid 的回复:
结构体变量同内置类型变量一样会分配内存,至于分配到哪里,也同内置类型一样的规则。
意思是结构体本身和C++的class一样,在声明的时候不分配内存只是告知编译器数据类型吗? 然后结构体变量是要分配内存的,而且存放在栈中吗?
a653560991 2015-06-24
  • 打赏
  • 举报
回复
引用 4 楼 qiezhihuai 的回复:
结构体是数据类型,跟int,char等标准类型一样,只占用flash空间,结构体变量是要分配内存的,静态和全局变量在堆中分配,局部变量保存在栈中,包括函数的参数也在栈中分配
意思是结构体本身和C++的class一样,在声明的时候不分配内存只是告知编译器数据类型吗? 然后结构体变量是要分配内存的,而且存放在栈中吗?
郄志怀 2015-06-24
  • 打赏
  • 举报
回复 1
结构体是数据类型,跟int,char等标准类型一样,只占用flash空间,结构体变量是要分配内存的,静态和全局变量在堆中分配,局部变量保存在栈中,包括函数的参数也在栈中分配
moritz_dev 2015-06-23
  • 打赏
  • 举报
回复
引用 1 楼 zhangxiangDavaid 的回复:
结构体变量同内置类型变量一样会分配内存,至于分配到哪里,也同内置类型一样的规则。
學習了,言簡意駭。
苏叔叔 2015-06-23
  • 打赏
  • 举报
回复
结构体变量同内置类型变量一样会分配内存,至于分配到哪里,也同内置类型一样的规则。

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧