Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
'rovnosti-operátor' : neshoda se znaménky nebo nepodepsaným podpisem
Poznámky
Zapojení == nebo != operace signed a unsigned proměnné. To může vést ke ztrátě dat.
Jedním ze způsobů, jak toto upozornění vyřešit, je přetypování jednoho z těchto dvou typů při porovnávání signed a unsigned typech.
Příklad
Následující příklad generuje 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;
}
Viz také
Upozornění kompilátoru C4018
Upozornění kompilátoru (úroveň 4) C4388