结构体包含枚举 怎么写
时间: 2023-10-07 19:04:08 浏览: 44
要创建一个结构体包含枚举的示例,你可以按照以下方式进行编写:
```c
#include <stdio.h>
// 定义枚举类型
enum Gender {
MALE,
FEMALE
};
// 定义结构体
struct Person {
char name[50];
int age;
enum Gender gender;
};
int main() {
// 创建结构体变量并初始化
struct Person person1 = {"John Doe", 25, MALE};
// 访问结构体成员
printf("Name: %s\n", person1.name);
printf("Age: %d\n", person1.age);
// 根据枚举值判断性别
if (person1.gender == MALE) {
printf("Gender: Male\n");
} else if (person1.gender == FEMALE) {
printf("Gender: Female\n");
}
return 0;
}
```
在上面的示例中,我们首先定义了一个枚举类型`Gender`,包含两个可能的值:`MALE`和`FEMALE`。然后,我们定义了一个结构体`Person`,其中包含了姓名、年龄和性别这三个成员。在`main()`函数中,我们创建了一个名为`person1`的结构体变量,并初始化了它的成员。最后,我们通过访问结构体成员并根据枚举值判断性别来输出相关信息。
请注意,在上述示例中,枚举类型和结构体都是在主函数之外定义的,以便它们可以在整个程序中使用。