共用体
使几个不同的变量共占一段内存的结构称为“共用体”类型的结构。共用体变量所占的内存长度等于最长的成员的长度
union 共用体名
{
成员列表
}变量列表;
#include <stdio.h>
#include <stdlib.h>
union data {
int i;
char c;
float f;
};
typedef struct Student {
int num;
float score;
}student_t;
int main() {
union data a;//联合体,共用体所有成员共用一块空间
student_t s;
a.i = 10;
a.c = 'A';
a.f = 98.5;
s.num = 10;
s.score = 90;
}
枚举
#include <stdio.h>
#include <stdlib.h>
union data {
int i;
char c;
float f;
};
typedef struct Student {
int num;
float score;
}student_t;
enum weekday {sun=5,mon,tue,wed,thu,fri,sat};
int main() {
union data a;//联合体,共用体所有成员共用一块空间
student_t s;
enum weekday workday;
a.i = 10;
a.c = 'A';
a.f = 98.5;
s.num = 10;
s.score = 90;
printf("wed=%d\n", wed);
workday = mon;
printf("workday=%d\n", workday);
system("pause");
}