Aviso do compilador (nível 2) C4244
'argument': conversão de 'type1' em 'type2', possível perda de dados
Um tipo de ponto flutuante foi convertido em um tipo inteiro. Uma possível perda de dados pode ter ocorrido.
Se você obtiver o aviso C4244, deverá alterar seu programa para usar tipos compatíveis ou adicionar alguma lógica ao código, para garantir que o intervalo de valores possíveis sempre seja compatível com os tipos que você estiver usando.
O erro C4244 também pode disparar nos níveis 3 e 4; confira Aviso do compilador (níveis 3 e 4) C4244 para obter mais informações.
Exemplo
O seguinte exemplo gera o aviso C4244:
// C4244_level2.cpp
// compile with: /W2
int f(int x){ return 0; }
int main() {
double x = 10.1;
int i = 10;
return (f(x)); // C4244
// try the following line instead
// return (f(i));
}