1

我正在用 C 做一个 win32 程序,但我不知道如何用 UNICODE 做一个枚举和 switch case。我从客户端收到具有此结构的命名管道

    typedef struct {
TCHAR UtilOrigem[10];
TCHAR Comando[3]; // Comando
TCHAR Argumento1[10];
}cmd;

cmd.comando 的值为“00”、“01”、“02”......

我想用 cmd.comando 做一个 switch case。

请帮我。谢谢卡洛斯

4

1 回答 1

1

尝试这个:

int val = _ttoi(cmd.comando);
switch (val)
{
case 0:
   ...
   break;
case 1:
   ...
   break;
case 2:
   ...
   break;
...
}

或者更简单:

int val = 10*(cmd.comando[0]-L'0')+(cmd.comando[1]-L'0');
switch (val)
{
case 0:
   ...
   break;
case 1:
   ...
   break;
case 2:
   ...
   break;
...
}
于 2014-07-30T16:38:22.047 回答