发布网友
共2个回答
热心网友
int i: 8; int j: 4; int a: 3 -- 3个元素类型相同。
int i: 8;int j: 4; char a: 3; -- 3个元素类型不相同。
结构的内存分配,元素的对齐和优化处理,同编译器有关。
sizeof() 运算符 算得的是真实的 占内存字节数。
3个元素类型不相同,占内存多一点,尚属有理。追问能不能详细解释一下第一个为什么是4吗 谢谢啦
追答位域,8+4+3 = 15
1 个 int , 4 字节,可存下 15 位。
4字节已是int型最小单位,不能再小。
热心网友
我试了一下,都是4呀追问我用的dev c++ 可能跟编译器有关吧
热心网友
int i: 8; int j: 4; int a: 3 -- 3个元素类型相同。
int i: 8;int j: 4; char a: 3; -- 3个元素类型不相同。
结构的内存分配,元素的对齐和优化处理,同编译器有关。
sizeof() 运算符 算得的是真实的 占内存字节数。
3个元素类型不相同,占内存多一点,尚属有理。追问能不能详细解释一下第一个为什么是4吗 谢谢啦
追答位域,8+4+3 = 15
1 个 int , 4 字节,可存下 15 位。
4字节已是int型最小单位,不能再小。
热心网友
我试了一下,都是4呀追问我用的dev c++ 可能跟编译器有关吧