小甲鱼 发表于 2017-6-27 04:00:37

S1E52:枚举类型

待更新

John_Cavaliar 发表于 2017-8-4 08:22:51

我复习到这里了,但是还得等您更新。

玉佩鑫 发表于 2018-4-26 23:11:44

小甲鱼加油啊

单行道007 发表于 2018-7-30 12:27:27

期待更新

清尘yt 发表于 2019-8-17 14:21:30

大自然搬运工

1、枚举类型定义或使用情景            如果一个变量只有几种可能的值,那么就可以将其定义为枚举(enumeration)类型。
2、声明枚举类型       enum 枚举类型名称 {枚举值名称, 枚举值名称…};         如:enum Week {sun, mon, tue, wed, thu, fri, sat};
3、定义枚举类型变量      enum 枚举类型名称 枚举变量1,枚举变量2;         如:enum Week today;
4、枚举类型里的枚举值默认为从开始初始化,如enum Week {sun, mon, tue, wed, thu, fri, sat};    //声明枚举类型Week,默认枚举值初始化从领开始,如枚举值名称sun~sat从0~6进行逐一赋值
若是对其之一进行赋值,则赋值的枚举值之前的都从零开始赋值;其后面则从赋值的数值开始逐次加一赋值,如enum Color {red, green, blue = 10, yellow};      //red=0,green=1,blue=10,yellow=11;
例子:
#include <stdio.h>
#include <time.h>
int main(void)
{
        enum Week {sun, mon, tue, wed, thu, fri, sat};    //声明枚举类型Week,默认枚举值初始化从领开始,如枚举值名称sun~sat从0~6进行逐一赋值
        enum Week today;         //定义枚举类型变量today
        struct tm *p;
        time_t t;
       
        time(&t);
        p = localtime(&t);

        today = p->tm_wday;

        switch(today)
        {
                case mon:
                case tue:
                case wed:
                case thu:
                case fri:
                        printf("干活!T_T\n");
                        break;
                case sat:
                case sun:
                        printf("放假!^_^\n");
                        break;
                default:
                        printf("Error!\n");
        }

        return 0;
}

Laofish2021 发表于 2021-8-30 20:04:21

today = p->tm_wday;这个编译不通过。应该是today = (enum Week)p->tm_wday;

SURONG0808 发表于 2022-2-8 14:52:40

感觉枚举变量并没有特殊的作用啊
各种意义上enum Week today == int today

Gordon1 发表于 2024-3-2 21:22:46

求更新
页: [1]
查看完整版本: S1E52:枚举类型