c语言

C语言结构体里枚举类型如何赋值

小亿
185
2024-03-16 19:20:54
栏目: 编程语言

在C语言中结构体里的枚举类型可以通过直接赋值或者通过枚举成员来赋值。

  1. 直接赋值:
#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;
}
  1. 通过枚举成员赋值:
#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;
}

无论采用哪种方式,都可以在结构体中赋值枚举类型。

0
看了该问题的人还看了