名前空間
変種
操作

C の数値限界インタフェース

提供: cppreference.com
< cpp‎ | types
 
 
ユーティリティライブラリ
汎用ユーティリティ
日付と時間
関数オブジェクト
書式化ライブラリ(C++20)
(C++11)
関係演算子 (C++20で非推奨)
整数比較関数
(C++20)
スワップと型操作
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
一般的な語彙の型
(C++11)
(C++17)
(C++17)
(C++17)
(C++17)

初等文字列変換
(C++17)
(C++17)
 
型サポート
基本的な型
基本型
固定幅の整数型(C++11)
数値の限界
C の数値限界インタフェース
実行時型情報
型特性
型カテゴリ
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
型の性質
(C++11)
(C++11)
(C++14)
(C++11)
(C++11)(C++20未満)
(C++11)(C++20で非推奨)
(C++11)
型特性定数
メタ関数
(C++17)
定数評価文脈
サポートされている操作
関係と性質の問い合わせ
型変更
型変換
(C++11)
(C++11)
(C++17)
(C++11)(C++20未満)(C++17)
 

std::numeric_limits インタフェースも参照してください。

ヘッダ <cstdint> で定義
PTRDIFF_MIN
(C++11)
std::ptrdiff_t 型のオブジェクトの最小値
(マクロ定数)[edit]
PTRDIFF_MAX
(C++11)
std::ptrdiff_t 型のオブジェクトの最大値
(マクロ定数)[edit]
SIZE_MAX
(C++11)
std::size_t 型のオブジェクトの最大値
(マクロ定数)[edit]
SIG_ATOMIC_MIN
(C++11)
std::sig_atomic_t 型のオブジェクトの最小値
(マクロ定数)[edit]
SIG_ATOMIC_MAX
(C++11)
std::sig_atomic_t 型のオブジェクトの最大値
(マクロ定数)[edit]
WCHAR_MIN
(C++11)
wchar_t 型のオブジェクトの最小値
(マクロ定数)[edit]
WCHAR_MAX
(C++11)
wchar_t 型のオブジェクトの最大値
(マクロ定数)[edit]
WINT_MIN
(C++11)
std::wint_t 型のオブジェクトの最小値
(マクロ定数)[edit]
WINT_MAX
(C++11)
std::wint_t 型のオブジェクトの最大値
(マクロ定数)[edit]

[編集]整数型の限界

ヘッダ <climits> で定義
CHAR_BIT
1バイトのビット数
(マクロ定数)[edit]
MB_LEN_MAX
マルチバイト文字1文字の最大バイト数
(マクロ定数)[edit]
CHAR_MIN
char の最小値
(マクロ定数)[edit]
CHAR_MAX
char の最大値
(マクロ定数)[edit]
SCHAR_MINSHRT_MININT_MINLONG_MINLLONG_MIN
(C++11)
signedchar, short, int, long, longlong の最小値
(マクロ定数)[edit]
SCHAR_MAXSHRT_MAXINT_MAXLONG_MAXLLONG_MAX
(C++11)
signedchar, short, int, long, longlong の最大値
(マクロ定数)[edit]
UCHAR_MAXUSHRT_MAXUINT_MAXULONG_MAXULLONG_MAX
(C++11)
unsignedchar, unsignedshort, unsignedint,
unsignedlong, unsignedlonglong の最大値
(マクロ定数)[edit]

ノート: CHAR_BITMB_LEN_MAX 以外のこれらの定数の型は、その記述する型のオブジェクトに整数拡張が適用された結果に一致することが要求されます。 CHAR_MAXint または unsignedint かもしれませんが、 char であることはありません。 同様に、 USHRT_MAX は符号なし型ではないかもしれず、 int であるかもしれません。

[編集]浮動小数点型の限界

ヘッダ <cfloat> で定義
FLT_RADIX
3種類の浮動小数点型すべてを表現するために使用される基数
(マクロ定数)[edit]
DECIMAL_DIG
(C++11)
longdouble から10進数に変換し、再び longdouble に戻した時に元の値と等しくなるために最低限必要な、その10進数の桁数。 これは longdouble をシリアライズ、デシリアライズするために必要な10進数の精度です (std::numeric_limits::max_digits10 も参照してください)。
(マクロ定数)[edit]
FLT_DECIMAL_DIGDBL_DECIMAL_DIGLDBL_DECIMAL_DIG
(C++17)
float, double, longdouble から10進数に変換し、再び元の型に戻した時に元の値と等しくなるために最低限必要な、その10進数の桁数。 これは浮動小数点値をシリアライズ、デシリアライズするために必要な精度です。 (std::numeric_limits::max_digits10 も参照してください)。 それぞれ少なくとも 6, 10, 10 以上の値に定義されます。 IEEE float の場合は 9、 IEEE double の場合は 17 です
(マクロ定数)[edit]
FLT_MIN_10_EXPDBL_MIN_10_EXPLDBL_MIN_10_EXP
float, double, longdouble において 10 の n-1 乗が正規化数であるような最も小さな負の整数 n
(マクロ定数)[edit]
FLT_TRUE_MINDBL_TRUE_MINLDBL_TRUE_MIN
(C++17)
float, double, longdouble の最も小さな正の値
(マクロ定数)[edit]
FLT_MAXDBL_MAXLDBL_MAX
float, double, longdouble の最も大きな有限値
(マクロ定数)[edit]
FLT_EPSILONDBL_EPSILONLDBL_EPSILON
float, double, longdouble における 1.0 とその次の表現可能な値の差
(マクロ定数)[edit]
FLT_DIGDBL_DIGLDBL_DIG
文字列から float, double, longdouble に変換し、再び文字列に戻したときに丸めやオーバーフローによる変化を起こさず維持されることが保証される10進数の桁数 (詳細は std::numeric_limits::digits10 を参照してください)
(マクロ定数)[edit]
FLT_MANT_DIGDBL_MANT_DIGLDBL_MANT_DIG
float, double, longdouble において精度を失わずに表現できる FLT_RADIX 進数の桁数
(マクロ定数)[edit]
FLT_MIN_EXPDBL_MIN_EXPLDBL_MIN_EXP
float, double, longdouble において FLT_RADIX の n-1 乗が正規化数であるような最も小さな負の整数 n
(マクロ定数)[edit]
FLT_MIN_10_EXPDBL_MIN_10_EXPLDBL_MIN_10_EXP
float, double, longdouble において 10 の n-1 乗が正規化数であるような最も小さな負の整数 n
(マクロ定数)[edit]
FLT_MAX_EXPDBL_MAX_EXPLDBL_MAX_EXP
FLT_RADIX の n-1 乗が floatdoublelongdouble で表現可能な有限の値であるような最も大きな正の整数 n
(マクロ定数)[edit]
FLT_MAX_10_EXPDBL_MAX_10_EXPLDBL_MAX_10_EXP
10 の n-1 乗が floatdoublelongdouble で表現可能な有限の値であるような最も大きな正の整数 n
(マクロ定数)[edit]
浮動小数点算術のデフォルトの丸めモード
(マクロ定数)[edit]
すべての算術演算がどの精度で行われるかを表します
(マクロ定数)[edit]
FLT_HAS_SUBNORMDBL_HAS_SUBNORMLDBL_HAS_SUBNORM
(C++17)
型が非正規化数をサポートするかどうかを表します。 -1(不明)、0(なし)、1(あり)
(マクロ定数)[edit]

[編集]関連項目

数値の限界C言語リファレンス
close