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。

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值