コンパイラの警告 (レベル 2) C4244Compiler Warning (level 2) C4244

'argument': 'type1' から 'type2'、データ損失の可能性への変換'argument' : conversion from 'type1' to 'type2', possible loss of data

A は整数型に変換された浮動小数点型。A floating point type was converted to an integer type. データが失われた可能性があります。A possible loss of data may have occurred.

C4244 の場合は、互換性のある型を使用するようにプログラムを変更するか、別のロジックをコードに追加して、変換される値の範囲が使用している型と常に互換性があるようにします。If you get C4244, you should either change your program to use compatible types, or add some logic to your code, to ensure that the range of possible values will always be compatible with the types you are using.

C4244 はレベル 3 および 4; でも起動できます。参照してくださいコンパイラの警告 (レベル 3 および 4) C4244詳細についてはします。C4244 can also fire at level 3, and 4; see Compiler Warning (levels 3 and 4) C4244 for more information.

Example

次の例では C4244 が生成されます。The following sample generates 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));
}