我在C中有一些定义:
#define My_CheckButton_1 "Check1"
#define My_CheckButton_2 "Check2"
#define My_CheckButton_3 "Check3"
我想将所有My_CheckButton_x添加到枚举中,因此我可以在循环中运行所有这些。
我该怎么做?
由于
答案 0 :(得分:0)
只需这样做:
typedef enum{Check1, Check2, Check3} My_CheckButton;
答案 1 :(得分:0)
枚举在C中具有整数类型,因此如果将它们移动到枚举,则不会获得字符串值,而是整数值。如果需要字符串值,则需要一个函数来执行枚举到字符串转换。它不一样,但也许使用数组可能是另一种选择:
static const char *My_CheckButtons[] = {"Check1", "Check2", ... , "CheckN"};
当然你还是要记住数组的大小。您也可以将两者结合使用,并使用枚举值作为字符串数组的索引。