値が小数点に対して大きすぎるか小さすぎます。質問する

値が小数点に対して大きすぎるか小さすぎます。質問する

次のようなコードがあります:

double shortfall = GetSomeNumber(); //3.3588548831176006E+29

if (shortfall > 0)
{
  returnValue = Convert.ToDecimal(shortfall);
}

これにより、上記のエラーが発生します。

ベストアンサー1

まあ、それはかなり自明です。

decimal.MaxValue79,228,162,514,264,337,593,543,950,335 です。あなたの数字はこれより大きいです。

decimalは よりも精度が高いですがdoubledouble範囲が広く、非常に大きい数値や非常に小さい数値も処理できます。

さて、あなたが本当に何をしようとしているのかを教えていただければ、私たちは解決策を見つけるお手伝いをすることができます...正直に言うと、doubleと を混ぜるのはめったに良い考えではdecimalありません。

おすすめ記事