C语言联合体union、枚举enum
作者:互联网
联合体(也叫:共用体)
关键字:union --------------------->(联合体使用的较少)
共用体中可以包含多个不同的数据类型
这些数据类型共享同一块内存空间
共用体的内存分配内容空间的大小,由共用体中最大的数据类型为基准,分配内存空间。
格式:
union 联合体名字{
数据类型 变量名1;
数据类型 变量名2;
数据类型 变量名3;
..........
数据类型 变量名n;
};
联合体的优点:
节约内存空间
缺点:
1、同一时刻只能使用联合体中的一个成员
2、多个变量使用同一块内存空间,不安全,开发中不建议使用联合体。
联合体中成员的访问:
union dataPyte dt;
dt.i = 初始值;
. :直接访问(普通的)
union dataPyte *dt;
dt->s = 初始值;
-> :间接访问(指针类型的)
声明联合体数据类型时,编译器不分配内存空间。定义联合体类型变量时,编译器才会分配内存空间。
枚举类型 (enum)
枚举类型的变量一般占用 4字节 的空间,跟成员个数无关;
常使用枚举类型表示一些常量:
enum 枚举名字{
枚举成员1, //0
枚举成员2, //1
枚举成员3, //2
枚举成员4, //3
.......
枚举成员n, // n-1
}; //分号不可省略
注意:
1、枚举中的成员只能表示一个整数,默认第一个成员代表整数0,后面的成员依次加1。
2、枚举中的成员使用逗号隔开。
3、可以给枚举中的某个成员指定一个初始值,某个成员后面的成员,再初始值的后面依次加1.
枚举类型变量的初始化:
(1)定义的同时进行初始化:
enum 枚举名字 枚举类型的变量名 = 枚举中的成员进行初始化;
(2)先定义在初始化:
enum 枚举名字 枚举类型的变量名 ;
枚举类型的变量名 = 枚举中的成员; ---------------->这里只能使用枚举里面的成员
枚举类型的变量可以直接使用,不用再定义一个变量,然后使用 . 或者->去访问它中的属性。
标签:union,联合体,成员,enum,数据类型,C语言,枚举,变量名 来源: https://www.cnblogs.com/lhj123/p/16409368.html