Share via


資料類型常數

資料類型常數是整數和浮點數資料類型所允許值的實作相關範圍。

整數類型常數

這些常數會提供整數資料類型的範圍。 若要使用這些常數,請在原始程式檔中包括 limits.h 標頭:

#include <limits.h>

注意

編譯器選項會將 /J 預設類型從 signed char 變更為 unsigned charchar

常數 Description
CHAR_BIT 8 char 中的位元數
SCHAR_MIN (-128) 最小 signed char
SCHAR_MAX 127 最大 signed char
UCHAR_MAX 255 (0xff) 最大 unsigned char
CHAR_MIN (-128)(0 如果 /J 已使用選項) 最小 char
CHAR_MAX 127 (如果使用 /J 選項則為 255) 最大 char
MB_LEN_MAX 5 多位元組 char 中的最大位元組數
SHRT_MIN -32768 最小 signed short
SHRT_MAX 32767 最大 signed short
USHRT_MAX 65535 (0xffff) 最大 unsigned short
INT_MIN (-2147483647 - 1) 最小 signed int
INT_MAX 2147483647 最大 signed int
UINT_MAX 4294967295 (0xffffffff) 最大 unsigned int
LONG_MIN (-2147483647L - 1) 最小 signed long
LONG_MAX 2147483647L 最大 signed long
ULONG_MAX 4294967295UL (0xfffffffful) 最大 unsigned long
LLONG_MIN (-9223372036854775807LL - 1) 最小值 signed long long__int64
LLONG_MAX 9223372036854775807LL 最大值 signed long long__int64
ULLONG_MAX 0xffffffffffffffffull 最大 unsigned long long
_I8_MIN (-127i8 - 1) 帶正負號的最小 8 位元值
_I8_MAX 127i8 帶正負號的最大 8 位元值
_UI8_MAX 0xffui8 不帶正負號的最大 8 位元值
_I16_MIN (-32767i16 - 1) 帶正負號的最小 16 位元值
_I16_MAX 32767i16 帶正負號的最大 16 位元值
_UI16_MAX 0xffffui16 不帶正負號的最大 16 位元值
_I32_MIN (-2147483647i32 - 1) 帶正負號的最小 32 位元值
_I32_MAX 2147483647i32 帶正負號的最大 32 位元值
_UI32_MAX 0xffffffffui32 不帶正負號的最大 32 位元值
_I64_MIN (-9223372036854775807 - 1) 帶正負號的最小 64 位元值
_I64_MAX 9223372036854775807 帶正負號的最大 64 位元值
_UI64_MAX 0xffffffffffffffffui64 不帶正負號的最大 64 位元值
_I128_MIN (-170141183460469231731687303715884105727i128 - 1) 帶正負號的最小 128 位元值
_I128_MAX 170141183460469231731687303715884105727i128 帶正負號的最大 128 位元值
_UI128_MAX 0xffffffffffffffffffffffffffffffffui128 不帶正負號的最大 128 位元值
SIZE_MAX 與 定義 時 _UI64_MAX_WIN64 相同,或 UINT_MAX 最大的原生整數大小
RSIZE_MAX 與 ( SIZE_MAX>> 1) 最大的安全程式庫整數大小

浮點數類型常數

下列常數會提供 、 和 float 資料類型的範圍和其他特性。 long doubledouble 若要使用這些常數,請在原始程式檔中包括 float.h 標頭:

#include <float.h>
常數 Description
DBL_DECIMAL_DIG 17 十進位位數的進位精確度
DBL_DIG 15 十進位位數精確度
DBL_EPSILON 2.2204460492503131e-016 最小,使 1.0 + DBL_EPSILON != 1.0
DBL_HAS_SUBNORM 1 類型支援偏低的 (異常) 數字
DBL_MANT_DIG 53 有效位數 (尾數) 中的位元數
DBL_MAX 1.7976931348623158e+308 最大值
DBL_MAX_10_EXP 308 最大十進位指數
DBL_MAX_EXP 1024 最大二進位指數
DBL_MIN 2.2250738585072014e-308 最小的標準化正值
DBL_MIN_10_EXP (-307) 最小十進位指數
DBL_MIN_EXP (-1021) 最小二進位指數
_DBL_RADIX 2 指數基數
DBL_TRUE_MIN 4.9406564584124654e-324 最小的正數偏低值
FLT_DECIMAL_DIG 9 十進位位數的進位精確度
FLT_DIG 6 十進位位數精確度
FLT_EPSILON 1.192092896e-07F 最小,使 1.0 + FLT_EPSILON != 1.0
FLT_HAS_SUBNORM 1 類型支援偏低的 (異常) 數字
FLT_MANT_DIG 24 有效位數 (尾數) 中的位元數
FLT_MAX 3.402823466e+38F 最大值
FLT_MAX_10_EXP 38 最大十進位指數
FLT_MAX_EXP 128 最大二進位指數
FLT_MIN 1.175494351e-38F 最小的標準化正值
FLT_MIN_10_EXP (-37) 最小十進位指數
FLT_MIN_EXP (-125) 最小二進位指數
FLT_RADIX 2 指數基數
FLT_TRUE_MIN 1.401298464e-45F 最小的正數偏低值
LDBL_DIG 15 十進位位數精確度
LDBL_EPSILON 2.2204460492503131e-016 最小,使 1.0 + LDBL_EPSILON != 1.0
LDBL_HAS_SUBNORM 1 類型支援偏低的 (異常) 數字
LDBL_MANT_DIG 53 有效位數 (尾數) 中的位元數
LDBL_MAX 1.7976931348623158e+308 最大值
LDBL_MAX_10_EXP 308 最大十進位指數
LDBL_MAX_EXP 1024 最大二進位指數
LDBL_MIN 2.2250738585072014e-308 最小的標準化正值
LDBL_MIN_10_EXP (-307) 最小十進位指數
LDBL_MIN_EXP (-1021) 最小二進位指數
_LDBL_RADIX 2 指數基數
LDBL_TRUE_MIN 4.9406564584124654e-324 最小的正數偏低值
DECIMAL_DIG 與 相同 DBL_DECIMAL_DIG 預設值 (double) 十進位位數的進位精確度

另請參閱

全域常數