关于求Sizeof的问题
#include<stdio.h>main()
{
union dat
{
int i;
char ch;
float f;
}x;
printf("%d\n", sizeof(x));
}
结果是4;
怎么解释?
2010-02-04 10:25
2010-02-04 11:34
程序代码:#include<stdio.h>
main()
{ //
union dat
{
int i;
char ch;
float f;
}x; //union dat x //当一个共用体被说明时, 编译程序自动地产生一个变量, 其长度为联合中最大的变量长度。
//以上例而言,最大长度是float数据类型,所以dat 的内存空间就是float型的长度。x为变量。
printf("%d\n", sizeof(x));// 输出变量x的长度,十进制长度为4.
}
2010-02-04 11:38

2010-02-04 12:05
2010-02-04 12:16
2010-02-04 12:34
2010-02-04 12:42
2010-02-04 13:03
2010-02-04 18:31
2010-02-04 21:27