Compilerwarnung (Ebene 4, aus) C4388
'token' : signed/unsigned mismatch
Die Verwendung des Tokenoperators zum Vergleichen einer signed
und einer größeren unsigned
Zahl erforderte, dass der Compiler den Wert in den signed
größeren unsigned
Typ konvertiert.
Hinweise
Eine Möglichkeit, diese Warnung zu beheben, ist, wenn Sie einen der beiden Typen beim Vergleichen und größeren unsigned
Typen umwandelnsigned
.
Diese Warnung ist standardmäßig deaktiviert. Sie können /Wall verwenden oder /w44388
in der Befehlszeile als Warnung der Ebene 4 aktivieren. Oder verwenden Sie #pragma warning(default:4388)
sie in Ihrer Quelldatei. Weitere Informationen finden Sie unter Compilerwarnungen, die standardmäßig deaktiviert sind.
Beispiel
In diesem Beispiel wird C4388 generiert und veranschaulicht, wie Sie es beheben können:
// 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;
}
Siehe auch
Compilerwarnung (Ebene 3) C4018
Compilerwarnung (Ebene 4) C4389