枚举类型
//性别
enum Sex{
MALE,
FEMALE,
SECRET
};
//颜色
enum color{
Red,
Green,
Blue
}
//变量声明
enum Sex xiaoming = MALE;
enum Sex xioaomei = FEMALE;
上述的enum Sex,enum color都是枚举类型,{}中的都是枚举类型的可能取值,也叫枚举常量。
这些取值默认从0开始,依次递增,当然也可以赋初值。
enum color{
Red = 2,
Green = 4,
Blue
}
//Red的值是2,Green的值是4,Blue的值是5
联合体
联合体定义的变量也包含一系列的成员,特征是这些成员公用同一块空间,也叫共用体。
Union UN{
char i;
int j;
};
//变量声明
Union UN a;
联合体大小
联合体大小至少是最大成员的大小
联合体大小必须是成员最大对齐数的整数倍
union Un1
{
char c[5];
int i;
};//8
union Un2
{
short c[7];
int i;
};//16
联合体应用
因为联合体成员共用一块空间,所以改变一个成员可能会改变其他成员大小。
//联合体判断大小端
int check(){
union {
int a;
char b;
}x;
x.a = 1;
return x.b;
}
int main(){
if(check())
printf("小端");
else
printf("大端"):
return 0;
}