从纯 C 中的枚举获取名称

问题描述 投票:0回答:1

我希望通过数字从枚举中获取名称。类似这样的代码:

enum Fruit {
  Apple,
  Banana,
  Peach,
};

printf(Fruit[1]);

预期结果应该是“香蕉”

我找到了 C++ 和其他语言的示例,但我需要 C 语言的示例。

在示例中,枚举中只有 3 个值,但实际上有很多值,如果我需要多次输入它们,就很容易出错。我没有找到解决方案来处理 C 中的问题。

c enums
1个回答
0
投票

您正在寻找的是一个数组,而不是一个枚举器。 枚举器用于访问常量值的数字表示形式。 您无法直接向后访问它。

https://www.w3schools.com/c/c_enums.php https://www.codecademy.com/resources/docs/c/enums

您应该使用像这样的 Char 数组:

const char *fruitNames[] = {
    "Apple",
    "Banana",
    "Peach"
};

printf("%s", fruitNames[1]);
© www.soinside.com 2019 - 2024. All rights reserved.