类型和内存分配的大小
这个问题在这里已经有了答案:
我的结构的实际大小(所有部分的总和)小于类型本身的大小“
由于许多计算机操作在其工作的值在特定内存边界对齐时更快,因此C语言标准允许实现进行这种对齐。 在大多数系统中,根据int的大小,ints将在4字节或8字节的边界上对齐。 必须对齐结构的大小,以便数组中下一个结构的地址将正确对齐,因此以int对齐4字节边界开始的结构必须具有4的倍数。
这是否意味着我失去了3个字节?
是。 (呃,这并不完全没有,你的程序通常会因为它而更快)。现代化的机器支持2TB的RAM,这比以前更不用担心了。
链接地址: http://www.djcxy.com/p/14071.html