Aviso do compilador (nível 2) C4307
'operador' : estouro de constante integral com sinal
O operador é usado em uma expressão que resulta em uma constante inteira estourando o espaço alocado para ela. Talvez seja necessário usar um tipo maior para a constante. Um signed int
contém um valor menor que um unsigned int
porque o signed int
usa um bit para representar o sinal.
A amostra a seguir gera C4307:
// C4307.cpp
// compile with: /W2
int i = 2000000000 + 2000000000; // C4307
int j = (unsigned)2000000000 + 2000000000; // OK
int main()
{
}