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;
相关推荐
蓝-萧6 分钟前
【玩转全栈】----Django基本配置和介绍
java·后端
priority_key6 分钟前
排序算法:堆排序、快速排序、归并排序
java·后端·算法·排序算法·归并排序·堆排序·快速排序
不染尘.1 小时前
2025_11_7_刷题
开发语言·c++·vscode·算法
似水এ᭄往昔1 小时前
【C++】--stack和queue
开发语言·c++
csbysj20201 小时前
R 绘图 - 散点图
开发语言
汤姆yu1 小时前
基于SpringBoot的动漫周边商场系统的设计与开发
java·spring boot·后端
皮皮林5511 小时前
快速解决 Maven 版本冲突指南 !
java·maven
灰小猿2 小时前
Spring前后端分离项目时间格式转换问题全局配置解决
java·前端·后端·spring·spring cloud
会跑的兔子2 小时前
Android 16 Kotlin协程 第一部分
android·开发语言·kotlin
Js_cold2 小时前
Verilog函数function
开发语言·fpga开发·verilog