在C語言中結構體里的枚舉類型可以通過直接賦值或者通過枚舉成員來賦值。
#include <stdio.h>
// 定義枚舉類型
enum Color {
RED,
GREEN,
BLUE
};
// 定義結構體
struct Car {
enum Color color;
int year;
};
int main() {
// 創建結構體對象并直接賦值
struct Car myCar = {GREEN, 2020};
// 打印結構體對象的值
printf("My car's color is %d and year is %d\n", myCar.color, myCar.year);
return 0;
}
#include <stdio.h>
// 定義枚舉類型
enum Color {
RED,
GREEN,
BLUE
};
// 定義結構體
struct Car {
enum Color color;
int year;
};
int main() {
// 創建結構體對象
struct Car myCar;
// 通過枚舉成員賦值
myCar.color = BLUE;
myCar.year = 2020;
// 打印結構體對象的值
printf("My car's color is %d and year is %d\n", myCar.color, myCar.year);
return 0;
}
無論采用哪種方式,都可以在結構體中賦值枚舉類型。