Pergunta

Estou fazendo um programa win32 com C e não sei fazer um enum e switch case com UNICODE.Recebo do cliente um pipe nomeado com esta estrutura

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

cmd.comando possuem valores "00", "01", "02" .....

E eu quero fazer um switch case com cmd.comando.

Por favor me ajude.Obrigado Carlos

Foi útil?

Solução

Experimente isto:

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

Ou ainda mais simples:

int val = 10*(cmd.comando[0]-L'0')+(cmd.comando[1]-L'0');
switch (val)
{
case 0:
   ...
   break;
case 1:
   ...
   break;
case 2:
   ...
   break;
...
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top