由浅到深认识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
相关推荐
子不语18021 分钟前
Python——函数
开发语言·python
ndjnddjxn34 分钟前
Rust学习
开发语言·学习·rust
月光技术杂谈39 分钟前
实战:C驱动框架嵌入Rust模块的互操作机制与完整流程
c语言·开发语言·rust·ffi·跨语言·bindgen·互操作
t1987512841 分钟前
基于MATLAB的指纹识别系统完整实现
开发语言·matlab
笑非不退1 小时前
C# c++ 实现程序开机自启动
开发语言·c++·c#
im_AMBER1 小时前
Leetcode 59 二分搜索
数据结构·笔记·学习·算法·leetcode
专注于大数据技术栈1 小时前
java学习--final
java·开发语言·学习
gihigo19981 小时前
基于MATLAB的IEEE 14节点系统牛顿-拉夫逊潮流算法实现
开发语言·算法·matlab
合作小小程序员小小店1 小时前
游戏开发,桌面%小游戏,贪吃蛇%demo,基于vs2022,c语言,easyX,无数据库
c语言·开发语言
天殇凉2 小时前
AC自动机学习笔记
java·笔记·学习