联合体与枚举

2017-08-21  本文已影响0人  贝克街的猫大哥呀

先来个联合体的定义

不同类型的变量共同占用一段内存(相互覆盖),联合变量任何时刻只有一个成员存在,节省内存。联合体变量的大小=最大的成员所占变量

例子:

union Myvalue{

   int x;

   int y;

   double z;

};

void main(){

   union Myvalue d;

   d.x = 90;

   d.y = 100;

   d.z = 8.8;

   printf("%d", d.x);

   system("pause");

}

所以最终只有z是有值的,但如果将 d.z=8.8 注掉, 是不是只有y有值呢。此时x也是有值的,不过x的值是100. 

讲讲枚举,其实和JAVA的写法--几乎一模一样

enum Day{

   Monday,

   Tuesday,

   Wednesday,

   Thursday,

    Friday,

   Sunday

};

void main(){

   enum Day day = Sunday;

   if (day ==Sunday){

       printf("SUNDAY!");

 }

else{

    printf("NOSUNDAY!");

}

system("pause");

}

没什么好说的了--就是这样用。

上一篇 下一篇

猜你喜欢

热点阅读