4.在32位PC机上采用vc++使用C语言,若有如下定义: struct data {int I;

4.在32位PC机上采用vc++使用C语言,若有如下定义:
struct data
{int I; char ch; float f;}b;
则结构体变量b占用内存的字节数是( )
A.1 B.2 C.9 D.11
为什么?

这与PC机是不是32位的没有关系,要看使用的C编译器的int型是32位的还是16位的。如果是32位的,要占12字节(int 4,char 1,float 4),因为还要“对齐”。若是16位的,那就只占8字节(int 2,char 1,flost 4)。所以都没有正确选项。你可以用sizeof(b);测一下用了多少字节。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-01-07
4+1+4追问

int不是2吗?

追答

visual c++ 中 短整型占两个字节 整型和长整型占4个字节

本回答被提问者采纳
相似回答