c-结构类型-枚举

翁恺老师网课,有兴趣可以去看原课哦。

常量符号化

· 用符号而不是具体数字来表示具体的数。

枚举

· 用枚举而不是定义独立的const int变量。

· 枚举是一种用户定义的数据类型,它用关键字enum以如下语法来声明:

enum 枚举类型名字{名字0,...,名字n};

· 枚举类型名字通常并不真的使用,要用的是在大括号里的名字,因为它们就是常量符号,它们的类型是int,值则依次是从0到n。如:

enum colors{red,yellow,green};

· 就创建了三个常量,red的值是0,yellow是1,而green的值是2。

· 当需要一些可以排列起来的常量值时,定义枚举的意义就是给了这些常量值名字。

#include<stdio.h>
enum color{red,yellow,green};
void f(enum color c);
int main(void)
{
	enum color t=red;
	scanf("%d",&t);
	f(t);
	return 0;
}
void f(enum color c)
{
	printf("%d\n",c);
}

· 枚举量可以作为值

· 枚举类型可以跟上enum做为类型

· 但是实际上是以整数来做内部计算和外部输出输入的

枚举量

· 声明枚举量的时候可以指定值

· enum COLOR{RED=1,YELLOW,GREEN=5};

· 此时yellow为2

枚举只是int

· 即使给枚举类型的变量赋不存在的整数值也没有任何warning或error

上一篇:枚举初步·


下一篇:C语言关键字(6)(自定义类型)