C-联合体
联合体
联合体中的变量共用同一个空间
创建和使用
#include <stdio.h>
union Object
{
int a;
char b;
float c;
};
int main()
{
union Object object;
object.a = 65;
printf("%c", object.b); // 'A'
return 0;
}
内存大小
printf("%llu", sizeof(union Object)); // 4
计算规则:
- 联合体中最大成员所占内存的大小
- 必须为最大类型所占字节的最小倍数