桁がでかい計算をC言語でやろうと思い、
のようなコードを書いてコンパイルしてみると、
123456789012345680000000000000.000000
のような値が表示されていました。
17桁目から繰り上がりされているようですが、これはdouble型の仕様なのでしょうか?
桁のでかい場合のprintfの限界
Re: 桁のでかい場合のprintfの限界
C言語のdouble型の仕様では詳しい精度は決まっていなかったはずなので、
64ビットのIEEE754または実行している環境での浮動小数点数の仕様だと思います。
64ビットのIEEE754または実行している環境での浮動小数点数の仕様だと思います。
オフトピック
実際のコードでは、利用する関数はきちんと利用する前に宣言(宣言を含むヘッダのインクルードを含む)しましょう。jun3453 さんが書きました:のようなコード
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)
Re: 桁のでかい場合のprintfの限界
みけCATさんありがとうございます。
インクルードコピーしてませんでした!すみません;;
この現象は環境による仕様なのですね~。
またよろしくお願いします!
インクルードコピーしてませんでした!すみません;;
この現象は環境による仕様なのですね~。
またよろしくお願いします!