C语言:枚举类型

1. 枚举类型的定义

enum枚举名{

枚举元素列表

};

cpp 复制代码
enum Weekday{
    mon,tue,wed,thu,fri,sat.sun
};

枚举常量的值,可以用编译器或者是用户指定。若用户不指定第一个元素的值,则编译器分配给它的值就是0。其他未指定值的元素,编译器分配给它的值是前一个元素的值加1。

例如:enum Weekday{mon,tue,wed,thu,fri,sat,sun};

则7个元素的值分别是0、1、2、3、4、5、6。

例如:enum Weekday{mon=1,tue,wed,thu,fri,sat,sun};

则7个元素的值分别是1、2、3、4、5、6、7。

例如:enum Weekday{mon,tue,wed=7,thu,fri,sat,sun};

则7个元素的值分别是:0、1、7、8、9、10、11。

2. 枚举变量的定义

(1)先定义枚举类型,再定义枚举变量(数组)

cpp 复制代码
enum Weekday{sun=7,mon=1,tue,wed,thu,fri,sat};
enum Weekday day1,day2,day[10];    //定义两个枚举变量和一个枚举数组

(2)定义枚举类型的同时定义变量(数组)

cpp 复制代码
enum Weekday{sun=7,mon=1,tue,wed,thu,fri,sat}day;

(3)省略方法(2)中的枚举名

cpp 复制代码
enum={sun=7,mon=1,tue,wed,thu,fri,sat}day1,day2;

3. 枚举变量的使用

(1)可以把枚举常量赋值给枚举变量

cpp 复制代码
day1=mon;

(2)也可以把整数赋值给枚举变量,但一般要进行类型转换

cpp 复制代码
day1=(enum Weekday)1;
相关推荐
Fruit_Caller11 分钟前
static
开发语言·c++
IT枫斗者枫哥5 小时前
MyBatis一对多分页:LIMIT 20,为什么凑不齐20个订单?
java·数据库
代码方舟5 小时前
Java数据工程:利用天远全网运营商三要素优化线上实名认证合规体验
java·人工智能
BBmmo5 小时前
我的 Java 学习笔记 · 第 7 篇:泛型与通配符
java
独泪了无痕5 小时前
Hutool之RandomUtil:随机数生成的终极利器
java·后端
花开路口5 小时前
深入理解 Java/Kotlin 协变与逆变
java·kotlin
运行时异常5 小时前
【WMS 仓储系统集成 AI Agent 实战】第 7 讲:Vue3 前端工程化——Token 刷新锁、Markdown 渲染踩坑与权限体系
java
她的男孩5 小时前
开放接口限流从 20 改到 200 还是每分钟 20 次:拆完防重放+幂等+限流,我找到 5 个静默失效的坑
java·后端·架构
天天被压力5 小时前
【Python 量化取数指南 #13】Python 把行情落库:sqlite 一键存,回测随用随取
java·人工智能·python
天天被压力5 小时前
【Python 量化取数指南 #14】Python 清洗行情数据:复权停牌对齐,回测不翻车
java·人工智能·python