首页 >
C >
结构体,联合体,枚举
阅读:57,774
sizeof计算Union的大小题
union中可以定义多个成员,union的大小由最大的成员的大小决定,并且必须是最大类型大小的整数倍。
比如:
typedef union
{
char s[10];
int i;
}foo;
foo a;
sizeof(a)的大小应该为12字节。这是因为,最大成员是s[10],占10个字节,但是还必须是最大类型成员大小的整数倍,而最大的类型成员是i,所以必须补足2个字节,最终的大小就是12个字节。