用枚举变量定义一个数组作为数组大小

Ass*_*lki 6 c arrays enums

将枚举变量定义为数组大小是什么意思?

例如,我有以下代码:

typedef enum
{
  D_ROM_RDE_GROUP_0 = 0x0,
  D_ROM_RDE_GROUP_1,   

  D_ROM_RDE_MAX_GROUPS

}E_ROM_RDE_GROUPS;

U_08 pPlaneCopy[D_ROM_RDE_MAX_GROUPS];
Run Code Online (Sandbox Code Playgroud)

我不明白...

谢谢您的帮助。

Som*_*ude 7

首先要记住的是枚举值是编译时常量。另一件事是枚举值(除非初始化为特定值)增加。所以在你的情况下D_ROM_RDE_GROUP_0等于0D_ROM_RDE_GROUP_1等于1D_ROM_RDE_MAX_GROUPS等于2

这意味着当你声明数组时,它与

U_08 pPlaneCopy[2];
Run Code Online (Sandbox Code Playgroud)