制限.h
limits.h は、さまざまな整数型 (文字型を含む) の値の範囲を定義するためのマクロを提供します。
CHAR_BIT: 各文字に含まれる 2 進数の数。SCHAR_MIN: signed char型の最小値。SCHAR_MAX: signed char型の最大値。UCHAR_MAX: unsiged char型の最大値。CHAR_MIN: char型の最小値。CHAR_MAX: char型の最大値。MB_LEN_MAX: マルチバイト文字に含まれる最大バイト数。SHRT_MIN: short int型の最小値。SHRT_MAX: short int型の最大値。USHRT_MAX: unsigned short int 型の最大値。INT_MIN: int型の最小値。INT_MAX: int型の最大値。UINT_MAX: unsigned int型の最大値。LONG_MIN:long int型の最小値。LONG_MAX:long int型の最大値。ULONG_MAX: unsigned long int 型の最大値。LLONG_MIN:long long int型の最小値。LLONG_MAX:long long int型の最大値。ULLONG_MAX: unsigned long long int 型の最大値。
次の例では、前処理ディレクティブを使用して、int 型を使用して 100000 を超える数値を格納できるかどうかを判断します。
#if INT_MAX < 100000
#error int 型が小さすぎます
#endif
上記の例では、int 型が小さすぎる場合、プリプロセッサはエラー メッセージを表示します。
limit.h 内のマクロを使用して、型エイリアスの正しい基礎となる型を選択できます。
#if INT_MAX >= 100000
typedef int 数量;
#それ以外
typedef long int 数量;
#endif
上記の例では、整数型の最大値 (INT_MAX) が 100000 以上の場合、型エイリアス quant は int を指し、それ以外の場合は long int を指します。
作者: wangdoc
アドレス: https://wangdoc.com/
ライセンス: クリエイティブ・コモンズ 3.0