次のようなコードがあります:
double shortfall = GetSomeNumber(); //3.3588548831176006E+29
if (shortfall > 0)
{
returnValue = Convert.ToDecimal(shortfall);
}
これにより、上記のエラーが発生します。
ベストアンサー1
まあ、それはかなり自明です。
decimal.MaxValue
79,228,162,514,264,337,593,543,950,335 です。あなたの数字はこれより大きいです。
decimal
は よりも精度が高いですがdouble
、double
範囲が広く、非常に大きい数値や非常に小さい数値も処理できます。
さて、あなたが本当に何をしようとしているのかを教えていただければ、私たちは解決策を見つけるお手伝いをすることができます...正直に言うと、double
と を混ぜるのはめったに良い考えではdecimal
ありません。