由浅到深认识C语言(14):枚举

该文章Github地址:https://github.com/AntonyCheng/c-notes

在此介绍一下作者开源的SpringBoot项目初始化模板(Github仓库地址:https://github.com/AntonyCheng/spring-boot-init-template & CSDN文章地址:https://blog.csdn.net/AntonyCheng/article/details/136555245),该模板集成了最常见的开发组件,同时基于修改配置文件实现组件的装载,除了这些,模板中还有非常丰富的整合示例,同时单体架构也非常适合SpringBoot框架入门,如果觉得有意义或者有帮助,欢迎Star & Issues & PR!

上一章:由浅到深认识C语言(13):共用体

14.枚举

14.1.枚举定义

**定义:**将变量的值一一列举出来,变量的值只限于列举出来的值的范围内;

枚举类型定义:

c 复制代码
enum 枚举名{
	枚举值表
};

在枚举值表中应列出所有可用值,也成为枚举元素,枚举变量仅能取枚举值所列元素;

示例如下:

需求:定义一个扑克牌的花色;

c 复制代码
#include<stdio.h>

enum POKER {
	HONGTAO,HEITAO,MEIHUA,FANGKUAI
};

int main(int argc, char* argv[]) {
	enum POKER poker_color1 = HONGTAO;
	enum POKER poker_color2 = HEITAO;
	enum POKER poker_color3 = MEIHUA;
	enum POKER poker_color4 = FANGKUAI;
	printf("%d,%d,%d,%d\n", poker_color1,poker_color2,poker_color3,poker_color4);
	return 0;
}

打印效果如下:

14.2.枚举中的索引值

枚举首位默认是 0 ,以后的值累加一,但是一个枚举中所有的值都可以改变,包括枚举首位,所以需要注意一下枚举中的索引问题,下面举例几个代表性的枚举以及其索引值;

示例一:

c 复制代码
enum ENUM{
	A,B,C,D,E
};
//索引值为:0、1、2、3、4

示例二:

c 复制代码
enum ENUM{
	A=5,B,C,D=10,E
};
//索引值为:5、6、7、10、11

示例三:

c 复制代码
enum ENUM{
	A,B=10,C,D=2,E
};
//索引值为:0、10、11、2、3
相关推荐
橙子199110162 分钟前
请简述一下什么是 Kotlin?它有哪些特性?
android·开发语言·kotlin
martian66531 分钟前
信创系统图形界面开发指南:技术选择与实践详解
开发语言·科技·系统架构·系统安全·创业创新
我命由我1234532 分钟前
STM32 开发 - stm32f10x.h 头文件(内存映射、寄存器结构体与宏、寄存器位定义、实现点灯案例)
c语言·开发语言·c++·stm32·单片机·嵌入式硬件·嵌入式
xyd陈宇阳39 分钟前
嵌入式开发高频面试题全解析:从基础编程到内存操作核心知识点实战
c语言·数据结构·stm32·算法·面试
敲敲敲-敲代码39 分钟前
【空间数据分析】缓冲区分析--泰森多边形(Voronoi Diagram)-arcgis操作
笔记·arcgis
kukuwawu44 分钟前
基因组注释笔记——GeneMark-ES/ET的使用
经验分享·笔记·学习·bash·基因注释
ghost1431 小时前
C#学习第20天:垃圾回收
开发语言·学习·c#
oioihoii1 小时前
C++23 std::invoke_r:调用可调用 (Callable) 对象 (P2136R3)
开发语言·c++23
一眼青苔1 小时前
conda添加新python版本环境,如何激活和销毁
开发语言·python·conda
Pseudo…1 小时前
web技术与Nginx网站服务
开发语言·php