当前位置:首页 > 内存 > 正文

结构体变量所需内存长度

  • 内存
  • 2024-06-01 19:00:54
  • 6499

一、请问这个结构体占的内存为什么是25?如果按照int占2个字节来进行这样的计算,那么问题就迎刃而解了。
intno占2个字节,charname[20]占20个字节,
sex占1个字节,
union是按照占用空间最大的变量来划分的,所以union占用2个字节。,
当然,你可以测试一下,将union中的int替换为占用内存较多的longlong、float、double,就会发现规律。
综上所述,存储大小为25字节。。
但是现在的机器基本上占用了4个字节的int,所以如果是这种情况
你应该
选择29个字节。。。所以你的问题一定是很久以前的
Unionstorage链接:web链接


二、结构体变量所占内存长度是总内存长度。根据中关村在线的查询,结构体变量占用的内存长度是各个成员占用的内存长度之和,同时内存的长度与其成员的顺序有关。