概述
枚举类型
概念: 可以使用枚举类型,声明代表整数常量的符号名称。通过使用关键字enum,可以创建一个新“类型”并制定她可以具有的值。枚举类型的目的是提高程序的可读性。
enum 常量是int类型的,因此在使用int类型的任何地方都可以使用它。
定义:
/*
这个声明设置spectrum为标记名。
*/
enum spectrum
{
red,
orange,
yellow,
green,
blue
};
/*
这个声明,使得color成为enum spectrum类型的一个变量。
*/
enum spectrum color;
使用:
-
enum 常量。
上例中,red, orange等等 是枚举常量。
在使用整数常量的任何地方都能使用枚举常量。例如,在数组声明中可以把它们作为数组大小,在switch语句中,可用它们来作为标签。
-
enum 变量
color 是枚举变量, 相当于整数型变量(int c)。
color 的可能值是red, orange, yellow, 等等。
color = blue;
if (yellow == color)
…;
for(color = red; color <= blue;blue++)
…;
虽然枚举常量(如red和blue)是int类型,但是枚举变量可以是任意整数类型,前提是该整数类型可以储存枚举常量。例如,spectrum的枚举符范围是0~5,所以编译器可以用unsigned char来表示color变量。
顺带一提,C枚举的一些特性并不适用于C++。例如,C允许枚举变量使用++运算符,但是C++标准不允许。所以,如果编写的代码将来会并入C++程序,那么必须把上面例子中的color声明为int类型,才能C和C++都兼容。 -
默认值
默认情况下,枚举列表中的常量都被赋予0、1、2等。 -
指定值
在枚举声明中,可以为枚举常量指定整数值:
enum levels {low = 100, medium = 500, high = 2000};
如果只给一个枚举常量赋值,没有对后面的枚举常量赋值,那么后面的常量会被赋予后续的值。例程:
/*
输入不同的颜色名称,输出关于这个颜色一条句子。
*/
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
最后
以上就是动听跳跳糖为你收集整理的C基础-枚举类型-1-定义,赋值,使用的全部内容,希望文章能够帮你解决C基础-枚举类型-1-定义,赋值,使用所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复