C语言之枚举类型

如果一个变量只有几种可能的值,则可以定义为枚举类型,所谓“枚举”就是指将可能的值一一列举出来,变量的值只限于列举出来的值的范围内。

声明枚举类型的一般形式:

enum [枚举名]
{
    枚举元素(或称为枚举常量)列表
};

注意:枚举成员之间要用逗号“ , ”进行分隔,而不是用“ ; ”。

枚举的使用与结构体的使用相似:

enum [枚举名] [变量名];

代码: 

#include <stdio.h>

enum weekday 
{
	sun,
	mon,
	tue,
	wed,
	thus,
	fri,
	sat,
};

int main()
{
	enum weekday workday;
	workday = tue;
	printf("%d\n",workday);
	return 0;
}

运行结果:2

注意:

①每个枚举元素都代表一个整数,C语言按定义时的顺序默认它们的值为0,1,2,3,4……,也就是按后面的加1。以上面的代码为例,sum的值自动设为0,mon的值为1……,sat的值为6。所以

workday = tue;

相当于

workday = 2;

②当然,每个枚举元素的值也可以人为指定,例如

enum weekday 
{
	sun=7,
	mon=1,
	tue,
	wed,
	thus,
	fri,
	sat,
};

指定枚举元素sun的值为7,mon为1,以后的枚举元素按顺序加1,直至sat=6。

③不同的枚举类型,枚举元素名称不可以相同。

④相同的枚举类型,枚举元素的值可以相同。

相关推荐

  1. C语言类型

    2023-12-17 15:58:02       66 阅读
  2. 深入挖掘C语言——

    2023-12-17 15:58:02       41 阅读
  3. C# 语言类型(三)—数组/类型/结构体

    2023-12-17 15:58:02       34 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-17 15:58:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-17 15:58:02       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-17 15:58:02       82 阅读
  4. Python语言-面向对象

    2023-12-17 15:58:02       91 阅读

热门阅读

  1. cisco packet tracer 路由器之间连线

    2023-12-17 15:58:02       53 阅读
  2. python单例模式

    2023-12-17 15:58:02       62 阅读
  3. 【面试】在Python中如何实现单例模式

    2023-12-17 15:58:02       49 阅读
  4. 多线程中的单例模式

    2023-12-17 15:58:02       69 阅读
  5. MySQL之锁

    2023-12-17 15:58:02       58 阅读
  6. AI创作的科幻小说[银河]03

    2023-12-17 15:58:02       57 阅读
  7. 物联网有哪些关键技术?

    2023-12-17 15:58:02       51 阅读
  8. 案例:xpath实例+功能

    2023-12-17 15:58:02       48 阅读
  9. Temporal 常见 F&Q 速查

    2023-12-17 15:58:02       64 阅读
  10. 使用Verdaccio搭建私有npm仓库

    2023-12-17 15:58:02       65 阅读
  11. css设置背景图 路径带括号 不显示问题

    2023-12-17 15:58:02       65 阅读
  12. Linux GPIO 应用编程

    2023-12-17 15:58:02       53 阅读