C语言变量占内存字节数问题

2024-12-25 06:38:57
推荐回答(1个)
回答1:

得看编译器设置的字节对齐了,而且也得看编译器是怎么定义int的
如果你不使用字节对齐,即紧凑存放,而且为32位编译系统,则a在内存中所占字节数为6*1+4*4+1*8=30个字节
若是4字节对齐,32位系统,则8+4*4+8=32字节
若是不字节对齐,16位编译系统(如TurboC2.0),则是6+4*2+8=22字节

你的问题,和编译器有关,得给出前提。