c语言宏定义奇淫技巧之枚举生成对应字符串
// 步骤1:定义列表宏(单一数据源) #define STATE_LIST(X) \ X(STATE_IDLE)\ X(STATE_RUN)\ X(STATE_ERROR) // 步骤2:生成枚举 #define ENUM_ITEM(name) name, typedef enum{STATE_LIST(ENUM_ITEM)}States;// 步骤3:生成字符串转换函数 #define STRING_ITEM(name)casename:return #name; const char* stat