目录

前言

1、枚举类型定义

2、枚举的优点

3、枚举的使用

结语


前言

        本篇文章讲解C语言自定义类型:枚举类型。

        枚举顾名思义就是一一列举,把可能的值一一列举。像一周的周一到周日可以枚举;每年12个月,可以枚举。

1、枚举类型定义

enum Day//星期
{
	Mon,
	Wues,
	Wef,
	Thur,
	Fri,
	Sat,
	Sun
};

enum Sex
{
	MALE,
	FEMALE,
	SECRET
};

        我们可以看到,枚举类型的定义和结构体类似。以enum开头,后面接枚举类型的类型名,然后大括号。大括号里面放枚举类型的内容,如果想定义星期就放入星期一到星期天。如果想定义性别就输入男;女和保密。注意:内容中间用逗号隔开而不是分号,大括号结尾记得加“;”。

        枚举的内容有没有大小,下面我们来测试一下:

#include <stdio.h>

enum Day//星期
{
	Mon,
	Tues,
	Wef,
	Thur,
	Fri,
	Sat,
	Sun
};

int main()
{
	printf("%d\n", Mon);
	printf("%d\n", Tues);
	printf("%d\n", Wed);
	printf("%d\n", Thur);
	printf("%d\n", Fri);
	printf("%d\n", Sat);
	printf("%d\n", Sun);
	return 0;
}

C语言自定义类型:枚举(C语言进阶)-LMLPHP

        结果如上。

2、枚举的优点

        用#define好像也可以实现同样的效果。那我们为什么要用枚举?

        枚举的优点:

        1、增加代码的可读性和可维护性

        2、和#define定义的标识符比较,枚举具有类型检查,更加严谨。

        3、防止了命名污染(封装)

        4、便于调试

        5、使用方便,一次可以定义多个常量

        在我们还没有很多编程经验时,可能感受不到枚举带来的便利,但当我们使用多了,就能慢慢体会到枚举类型的作用了。

3、枚举的使用

        定义枚举类型后,可以用枚举类型定义变量,定义的变量只能赋予枚举类型内容中有的值:

enum Day//星期
{
	Mon,
	Tues,
	Wed,
	Thur,
	Fri,
	Sat,
	Sun
};

int main()
{
	enum Day d = Mon;
	return 0;
}

结语

        关于枚举,就讲完了,希望对大家有所帮助。

03-19 22:35