如何获取枚举数
我有一个枚举
typedef enum{
DEL_TIME_VALUE = -1,
DEL_TIMESEC_VALUE = 100,
DEL_TIMEMIN_VALUE = 200,
DEL_TIMEHOUR_VALUE = 300,
DEL_DAY_VALUE = 1000,
DEL_COUNT_VALUE = 1000,
....
.....
.....
DEL_END =90002
}WORKINGTIME;
我如何获得枚举计数。
我尝试下面的for循环!
for(int i=DEL_TIME_VALUE; i<=DEL_END; i++) {
}
我觉得这不太好!
任何人都可以告诉我如何获得枚举数!它们在枚举中声明。
提前致谢!
你不能。
有一种技术可以让您获得枚举计数。看起来像
typedef enum {
value_one,
value_two,
value_three,
...
enum_count
} my_enum;
现在值
enum_count
是枚举中值的计数。但是,此技术仅在枚举都带有其 implicit 值时才有效,其中 value_one
是 0
,value_two
是 1
,等等。因此,枚举中的最后一个值始终具有该值枚举值的计数。在您的情况下,您的枚举常量具有不单调递增的“显式”值。无法从这种类型的枚举中导出计数。即使在理论世界中您可以导出计数,这也对您没有帮助,因为您无法导出给定枚举常量的值。