Предупреждение компилятора (уровень 3) C4018
"token" : подписанный или неподписанный несоответствие
Использование оператора токена для сравнения signed
и unsigned
чисел, необходимых компилятору для преобразования signed
значения unsigned
в .
Замечания
Одним из способов устранения этого предупреждения является приведение одного из двух типов при сравнении и unsigned
типахsigned
.
Пример
В этом примере создается C4018 и показано, как исправить его:
// C4018.cpp
// compile with: cl /EHsc /W4 C4018.cpp
int main() {
unsigned int uc = 0;
int c = 0;
unsigned int c2 = c; // implicit conversion
if (uc < c) // C4018
uc = 0;
if (uc < unsigned(c)) // OK
uc = 0;
if (uc < c2) // Also OK
uc = 0;
}
См. также
Предупреждение компилятора (уровень 4) C4388
Предупреждение компилятора (уровень 4) C4389