C 中枚举成员的正确用法

标签 c

如果我在头文件 header.h 中有一个枚举

enum Fruits
{
  Apple,
  Orange,
  Guava
};

我可以在另一个头文件 bheader.h 中使用它吗

#include <aheader.h>
...
#define FRUIT1 Fruits.Apple

无论我打算将其用于什么目的,这种用法是否正确。 如果有变化,范围会是什么?

最佳答案

枚举常量在 C 中没有被它们的父类型限定,所以这很简单:

#define FRUIT1 Apple

出于这个原因,通常认为自己给枚举常量加上前缀以避免名称冲突是一种很好的风格。

enum Fruits
{
  FRUIT_APPLE,
  FRUIT_ORANGE,
  FRUIT_GUAVA
};

关于C 中枚举成员的正确用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24397108/

相关文章:

c - 为是/否用户提示做 while 循环

c - Typedef 抽象类型指针指向具体类型指针,以避免在 C 编程中进行强制转换

c++ - 当Visual Studio 2017从github源构建时,c1083错误

c - Arm Cortex A8 上的分析

c - Scanf() 无法检测到错误的输入

c - 将参数从 C 传递到 64 位的 GNU 汇编函数

C Linux 中 C 查找耗时

将结构内的元素与 C 中的空指针值进行比较

c - 用 C 编写的程序无限循环或在一段时间后崩溃

c - OpenWRT 与 NetBeans 7.3.1