共用体:不同的变量共享一段内存

一般形式:union  共用体名 { 成员表列  } 变量表列;

要点:共用体声明,定义和引用类似结构体,但共用体所占的内存大小是最长成员所占的大小,但其只能放其中的一个变量,而且是最后被声明的

#include<stdio.h>

union Data
{
     int i;
     float f;
};

int main()
{
     union Data Data1;
     Data1.i=10;
     Data1.f=3.14;
     printf("%d",Data1.i);
     printf("%f",Data1.f);
  
    return 0;
}
只有f能被打印出来
     

枚举:把变量可能的值一一列出来

一般形式:enum [枚举名] {枚举元素表};

看一个程序

#include<stdio.h>

typedef enum
{
         a,
         b,
         c
}Math;

int main()
{
      printf("%d",a);
      printf("%d",b);
      printf("%d",c);

      return 0;
}


打印:0 1 2  值对应