Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
'token': incompatibilidade assinada/não assinada
Comentários
Usar o operador de token para comparar um número signed e um número maior unsigned exigiu que o compilador convertesse o valor de signed no tipo maior unsigned.
Uma maneira de corrigir esse aviso é converter um dos dois tipos ao comparar os tipos signed e os tipos maiores unsigned.
Esse aviso está desativado por padrão. Você pode usar /Wall ou /w44388 para habilitá-lo na linha de comando como um aviso de nível 4. Ou então use #pragma warning(default:4388) no arquivo de origem. Para obter mais informações, confira Avisos do compilador desativados por padrão.
Exemplo
Este exemplo gera C4388 e mostra como corrigi-lo:
// C4388.cpp
// compile with: cl /EHsc /W4 C4388.cpp
#pragma warning(default: 4388)
int main() {
unsigned long long uc = 0;
int c = 0;
unsigned long long c2 = c; // implicit conversion
if (uc < c) // C4388
uc = 0;
if (uc < (unsigned long long)(c)) // OK
uc = 0;
if (uc < c2) // Also OK
uc = 0;
}
Confira também
Aviso do compilador (nível 3) C4018
Aviso do compilador (nível 4) C4389