C++ 標準では、浮動リテラルについて次のように述べています。
スケーリングされた値がその型の表現可能な値の範囲内にない場合、プログラムは不適切な形式です。
スケーリングされた値は、有効部分に 10 ^ 指数部分を掛けたものです。
x86-64 では:
float
単精度IEEE-754ですdouble
倍精度IEEE-754ですlong double
80 ビットの拡張精度 IEEE-754 です。
このコンテキストでは、これら 3 つのタイプのそれぞれの表現可能な値の範囲は? これはどこに文書化されていますか? またはどのように計算されますか?