typedef枚举testcaseid
{
“TC-HIW-0019”=0,
“TC-HIW-0020”,
“TC-HIW-0021”
}测试用例id;
我需要在枚举中表示我的测试用例。在我的测试功能中,我需要在以下测试用例之间切换:

void testfunc(uint8_t no)
{
    switch(no)
    {
        case 0:
        case 1:
        default:
    }
}

那么有谁能帮助我们如何使用枚举来声明字符串呢?

最佳答案

实际上,这是做不到的。您可以用以下方法模拟它:

typedef enum testCaseId {
    TC_HIW_0019 = 0,
    TC_HIW_0020,
    TC_HIW_0021
} testCaseId;
char *testCaseDesc[] = {
    "TC-HIW-0019",
    "TC-HIW-0020",
    "TC-HIW-0021"
};

然后将枚举值(x)用于所有代码,当您希望字符串值用于描述目的(如日志记录)时,请使用testCaseDesc[x]
确保枚举和数组同步。

10-05 23:13