Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
'equality-operator' : incompatibilité signée/non signée
Notes
Une == ou != une opération impliquée signed et unsigned des variables. Cela peut entraîner une perte de données.
Une façon de corriger cet avertissement est si vous cassez l’un des deux types lorsque vous comparez et signed les unsigned types.
Exemple
L’exemple suivant génère l’erreur C4389 :
// C4389.cpp
// compile with: cl /EHsc /W4 C4389.cpp
int main()
{
int a = 9;
unsigned int b = 10;
int result = 0;
if (a == b) // C4389
result = 1;
else
result = 2;
if (unsigned(a) == b) // OK
result = 3;
else
result = 4;
return result;
}
Voir aussi
Avertissement du compilateur C4018
Avertissement du compilateur (niveau 4) C4388