C语言基础教程(7)枚举

枚举


什么是枚举

             把一个事物所以可能的取值一一列举出来

/*
    目的:枚举
*/


#include <stdio.h>

//自定义了一个数据类型,并没有定义变量,该数据类型的名字 enum WeekDay

enum WeekDay{

    //MonDay, TuesDay, WednesDay, ThursDay, FriDay, SaturdDay, Sunday

      MonDay=10, TuesDay, WednesDay, ThursDay, FriDay, SaturdDay, Sunday


};//分号

int main(void){

    //int day;//day定义成int类型范围太大不合适,day的取值只可能有7个(0-6),浪费空间

    enum WeekDay day = FriDay; //初始化一个enum WeekDay 类型变量 day

    printf("%d\n", day);

    return 0;

}

/*

-----------在VC++6.0输出结果:

4


14

*/

怎么使用枚举

/*
    目的:枚举2
*/


#include <stdio.h>

enum weekday{

    MonDay, TuesDay, WednesDay, ThursDay, FriDay, SaturdDay, Sunday
 
};


void f(enum weekday i)//本函数的目的只是期望接受0-6之间的数字,将形参定义为枚举
{

    switch (i){
        case 0:

            printf("MonDay !\n");

            break;

        case 1:

            printf("TuesDay !\n");

            break;

        case 2:

            printf("WednesDay !\n");

            break;

        case 3:

            printf("ThrusDay !\n");

            break;

        case 4:

            printf("FriDay !\n");

            break;

        case 5:

            printf("ThursDay !\n");

            break;

        case 6:

            printf("SunDay !\n");

            break;

    }


}

int main(void){

    f(FriDay);//虽然FriDay本质上就是5,但直接写出f(5);就是错的,也不可能写成Friday 大小写敏感

    return 0;

}

/*
枚举的优缺点

优点:代码更安全(强制输入),比较直观(有意义)

缺点:书写麻烦,不能出错。

总结:当是有限个元素时,用枚举更安全,高效。

*/

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值