Upozornění kompilátoru (úroveň 4, vypnuto) C4388
Token : Neshoda se znaménky nebo nepřiřazenými znaménkami
Použití operátoru tokenu k porovnání signed
a většího unsigned
čísla vyžadovalo kompilátor k převodu signed
hodnoty na větší unsigned
typ.
Poznámky
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 větších unsigned
typech.
Toto upozornění je ve výchozím nastavení vypnuté. Můžete použít /Wall nebo /w44388
ji povolit na příkazovém řádku jako upozornění úrovně 4. Nebo použijte #pragma warning(default:4388)
ve zdrojovém souboru. Další informace najdete v tématu Upozornění kompilátoru, která jsou ve výchozím nastavení vypnutá.
Příklad
Tato ukázka vygeneruje C4388 a ukazuje, jak ji opravit:
// 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;
}
Viz také
Upozornění kompilátoru (úroveň 3) C4018
Upozornění kompilátoru (úroveň 4) C4389