Condividi tramite


Avviso del compilatore (livello 3) C4287

'operatore': errata corrispondenza tra costanti unsigned/negative

Una variabile unsigned è stata utilizzata in un'operazione con un numero negativo.

Per impostazione predefinita, questo avviso non è attivo. Per ulteriori informazioni, vedere Avvisi del compilatore disattivati per impostazione predefinita.

Esempio

Nell'esempio seguente viene generato 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;
}