共用体及枚举

     共用体(联合体)

 1.一个结构变量的所占内存空间大小,一般大于或者等于结构中所有成员变量大小之和,成员变量在结构体内存空间按照定义的顺序依次存储。

 2.共用体是将几种不同类型的变量存放在同一段内存单元中。

 3.语法形式:

 union 共用体名{

数据类型 成员名;

数据类型 成员名;

     ......

}共用体变量名;

4.共用体与结构体的定义形式相似,但是含义不同。结构变量所占内存长度一般等于或等于各成员占的内存长度之和,每个成员分别占有自己的内存单元。而共用体所占内存长度等于最长的成员长度。

5.注意:

同一内存段可以用来存放几种不同类型的成员,但是某一时刻只能存放其中一种。在某一瞬间只有一个成员起作用。

共用体变量中起作用的是最后一个存放的成员,在存入一个新成员后,原有的成员就失去了作用。

共用体变量的地址和其成员地址都是同一地址。

不同对共用体变量赋值,也不能在定义共用体变量时对其初始化。



                                                                                    枚举类型

1.语法形式:

enum 枚举名{

标识符[=整型常数],

标识符[=整型常数],

..........

标识符[=整型常数],

};

2.c语言编译器把枚举元素当做整型常量来处理。编译器会将第一个元素赋值为0,第二第三个依次赋值为1,2.....。

3.注意:

枚举中每个成员(标识符)结束符是",",最后一个成员可省略。

初始化时可以赋值负数,以后枚举仍依次加1。

枚举变量只能取枚举说明结构中的某个枚举元素。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值