intmax_t
または別の言い方をすれば、%jd
浮動小数点数以外に相当するものはありますか?
これはすでにここで副次的な質問として尋ねられていますが、質問が大きすぎて、副次的な質問に答えるのを忘れている人がいると思います。また、それはc ++としてタグ付けされていました.acソリューションを探しています.
関連する質問:
intmax_t
または別の言い方をすれば、%jd
浮動小数点数以外に相当するものはありますか?
これはすでにここで副次的な質問として尋ねられていますが、質問が大きすぎて、副次的な質問に答えるのを忘れている人がいると思います。また、それはc ++としてタグ付けされていました.acソリューションを探しています.
関連する質問:
C11 には intmax_t (サポートされる最大幅の整数型) に相当する浮動小数点はありません。将来の C は、ある種の long long double などを定義する必要があります。言語には現在、シームレスなアップグレード パスがありません。
C11 6.11.1.1 「将来の標準化には、long double よりも範囲、精度、またはその両方が大きいものを含む、追加の浮動小数点型が含まれる可能性があります。」あなたが想像するより大きな幅の可能性を示しています。
浮動小数点数の状況は、必要な整数とは異なります。さまざまなプロセッサの幅は年々増加しており (8、16、32、64)、近いうちに 128 になります。全体の浮動小数点サイズは比較的安定しています (4,8,10,16) が、精度、範囲、エンコード、丸めは FP に関する多くの懸念事項を取り上げています。次に、10 進数と 2 進数の浮動小数点仕様が表示されると思います。
もう 1 つの違いは、整数が 1 つの次元 (範囲) で大きくなることです。FP は、基数 (2、10、16 など) の特殊性は言うまでもなく、範囲と精度で独立して成長できます。以下の「IEEE 754」コメントも参照してください。
現在、C11 6.2.5.4 : float
、double
、およびの 3 つがありlong double
ます。互換性のある前方パスを作成したい場合は、 say を使用して変更を準備できますがtypedef long double Xdouble
、 のような多くのラッパー関数を記述し、 、 などXdouble sinX(Xdouble x);
に多くの同等の定義を準備する必要がある場合があります。小さな努力はありません。DBL_MANT_DIG
PRIdN