Avviso del compilatore (livello 3, off) C4287

'operator': mancata corrispondenza costante senza segno/negativo

Una variabile senza segno è stata usata in un'operazione con un numero negativo.

Per impostazione predefinita, questo avviso non è attivo. Per altre informazioni, vedere Compiler Warnings That Are Off by Default.

Esempio

L'esempio seguente genera l'errore C4287:

// C4287.cpp
// compile with: /W3
#pragma warning(default : 4287)
#include <stdio.h>

int main()
{
    unsigned int u = 1;
    if (u < -1)   // C4287
        printf_s("u LT -1");
    else
        printf_s("u !LT -1");
    return 0;
}