c 语言 typedef enum 示例
时间: 2023-07-25 18:26:18 浏览: 183
在C语言中,可以使用`typedef`关键字来为枚举类型定义一个新的类型名。这样做的好处是可以让代码更加易读易懂。下面是一个简单的例子:
```
typedef enum {
MONDAY,
TUESDAY,
WEDNESDAY,
THURSDAY,
FRIDAY,
SATURDAY,
SUNDAY
} Weekday;
Weekday get_weekday(int day) {
switch (day) {
case 1:
return MONDAY;
case 2:
return TUESDAY;
case 3:
return WEDNESDAY;
case 4:
return THURSDAY;
case 5:
return FRIDAY;
case 6:
return SATURDAY;
case 7:
return SUNDAY;
default:
printf("无效的日期\n");
exit(1);
}
}
int main() {
int day = 3;
Weekday weekday = get_weekday(day);
printf("第%d天是%s\n", day, weekday == WEDNESDAY ? "星期三" : "其他日子");
return 0;
}
```
在这个例子中,我们使用`typedef`关键字为一个枚举类型定义了一个新的类型名`Weekday`。然后我们定义了一个函数`get_weekday`,它接受一个整数参数`day`,返回对应的枚举常量。在`main`函数中,我们调用`get_weekday`函数,并根据返回值输出对应的日期。需要注意的是,在使用`typedef`定义新的类型名时,应该将`enum`和类型名写在一起,否则会出现语法错误。
阅读全文