web-dev-qa-db-ja.com

C ++の符号なしdouble?

C++が符号なしdouble構文をサポートしないのはなぜですか?

63
lost3den

典型的な浮動小数点形式は符号なしの数値をサポートしていないためです。たとえば、 IEEE 754形式のこのリスト を参照してください。

一般的なハードウェアでサポートされていない数値形式を追加すると、コンパイラの作成者の生活が難しくなり、おそらく努力する価値はないと考えられます。

68
unwind

ほとんどの浮動小数点ハードウェアは符号なし浮動小数点型をサポートしないため、C++は符号なし浮動小数点型をサポートしません。一部のグラフィックスカードは符号なしの浮動小数点で動作しますが、通常は内部であり、プログラムやユーザーには実際には見えません。

14
Jerry Coffin

符号なし整数は、余分なビット精度を獲得し、符号付き整数とはビットごとの意味が少し異なります。浮動小数点数と倍精度数は常に(ほとんどのハードウェアで)符号用にビットを予約し、ビット単位のセマンティクスを持たないため、符号なしの実数型を使用しても実質的な利点はありません。

7
Marcelo Cantos