联合体和枚举

本文探讨了联合体的构成、空间分配,与结构体的对比,以及如何计算联合体大小。同时介绍了枚举类型的优点,包括增加代码可读性、严谨性及调试友好性。
摘要由CSDN通过智能技术生成

一,联合体

(1)像结构体一样,联合体由一个或者多个成员构成,这些成员可以是不同类型。

(2)编译器只为最大成分分配空间,联合体的特点是所有成员共用一块空间。

(3)因此联合体变量大小,至少是最大成员的大小(因为联合体至少得有能力保存最大的那个成员)。

二,相同成员结构体和联合体的对比

三,计算联合体的大小

(1)联合体至少是最大成员的大小。

(2)但最大成员的大小不是对齐数的整数倍的时候,就要对齐到最大对齐数的整数倍。

四,枚举类型

(1)顾名思义,一一列举出来

如:

其中  enum Sex为枚举类型,{} 里面的成员叫做可能取值,也叫枚举常量。其中这些可能的取值都是有值的,从零开始依次加一,在声明枚举类形式时可以赋值。

五,枚举类型的优点

(1)增加代码的可读性。

(2)和#define定义的标识符比较枚举类型检查,更加严谨。

(3)便于调试,与处理阶段会删除#define的定义符号。

(4)枚举类型常量是遵循作用域规则的,枚举生命在函数内,只能在函数内使用。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值