GCC によってコンパイルされた標準の C コードへの些細な追加だと思っていたことが、私をやや混乱させました。
A と呼ばれる double と B と呼ばれる double があり、A = 1e-20 などの非常に小さな指数関数があり、B が 1e-5 などのより大きな値である場合、A + B の合計に等しい私の double C はなぜかかるのですか?ドミナント値 B について? 小数点以下 25 桁まで出力するように指定すると、1.00000000000000100000e-5 になることを期待していました。
代わりに、私が得るのは 1.00000000000000000000e-5 です。long double などを使用する必要がありますか?
非常に混乱しており、ほとんどの人が答えるのが簡単な質問です。事前にご指導いただきありがとうございます。