数据类型常量Data Type Constants

数据类型常量是实现相关的整型和浮点数据类型允许的值范围。Data type constants are implementation-dependent ranges of values allowed for integral and floating-point data types.

整型类型常量Integral type constants

这些常量提供了整型数据类型的范围。These constants give the ranges for the integral data types. 要使用这些常量,请在源文件中包含 limits.h 标头:To use these constants, include the limits.h header in your source file:

#include <limits.h>

备注

/J 编译器选项将默认的 char 类型更改为 unsigned。The /J compiler option changes the default char type to unsigned.

返回的常量Constant “值”Value 描述Description
CHAR_BITCHAR_BIT 88 char 中的位数Number of bits in a char
SCHAR_MINSCHAR_MIN (-128)(-128) 最小有符号 char 值Minimum signed char value
SCHAR_MAXSCHAR_MAX 127127 最大有符号 char 值Maximum signed char value
UCHAR_MAXUCHAR_MAX 255 (0xff)255 (0xff) 最大无符号 char 值Maximum unsigned char value
CHAR_MINCHAR_MIN (-128)(如果使用了 /J 选项,则为 0)(-128) (0 if /J option used) 最小 char 值Minimum char value
CHAR_MAXCHAR_MAX 127(如果使用了 /J 选项,则为 255)127 (255 if /J option used) 最大 char 值Maximum char value
MB_LEN_MAXMB_LEN_MAX 55 多字节 char 中的最大字节数Maximum number of bytes in multibyte char
SHRT_MINSHRT_MIN -32768-32768 最小有符号 short 值Minimum signed short value
SHRT_MAXSHRT_MAX 3276732767 最大有符号 short 值Maximum signed short value
USHRT_MAXUSHRT_MAX 65535 (0xffff)65535 (0xffff) 最大无符号 short 值Maximum unsigned short value
INT_MININT_MIN (-2147483647 - 1)(-2147483647 - 1) 最小有符号 int 值Minimum signed int value
INT_MAXINT_MAX 21474836472147483647 最大有符号 int 值Maximum signed int value
UINT_MAXUINT_MAX 4294967295 (0xffffffff)4294967295 (0xffffffff) 最大无符号 int 值Maximum unsigned int value
LONG_MINLONG_MIN (-2147483647L - 1)(-2147483647L - 1) 最小有符号 long 值Minimum signed long value
LONG_MAXLONG_MAX 2147483647L2147483647L 最大有符号 long 值Maximum signed long value
ULONG_MAXULONG_MAX 4294967295UL (0xfffffffful)4294967295UL (0xfffffffful) 最大无符号 long 值Maximum unsigned long value
LLONG_MINLLONG_MIN (-9223372036854775807LL - 1)(-9223372036854775807LL - 1) 最小有符号 long long 或 __int64 值Minimum signed long long or __int64 value
LLONG_MAXLLONG_MAX 9223372036854775807LL9223372036854775807LL 最大有符号 long long 或 __int64 值Maximum signed long long or __int64 value
ULLONG_MAXULLONG_MAX 0xffffffffffffffffull0xffffffffffffffffull 最大无符号 long long 值Maximum unsigned long long value
_I8_MIN_I8_MIN (-127i8 - 1)(-127i8 - 1) 最小有符号的 8 位数值Minimum signed 8-bit value
_I8_MAX_I8_MAX 127i8127i8 最大有符号的 8 位数值Maximum signed 8-bit value
_UI8_MAX_UI8_MAX 0xffui80xffui8 最大无符号的 8 位数值Maximum unsigned 8-bit value
_I16_MIN_I16_MIN (-32767i16 - 1)(-32767i16 - 1) 最小有符号的 16 位数值Minimum signed 16-bit value
_I16_MAX_I16_MAX 32767i1632767i16 最大有符号的 16 位数值Maximum signed 16-bit value
_UI16_MAX_UI16_MAX 0xffffui160xffffui16 最大无符号的 16 位数值Maximum unsigned 16-bit value
_I32_MIN_I32_MIN (-2147483647i32 - 1)(-2147483647i32 - 1) 最小有符号的 32 位数值Minimum signed 32-bit value
_I32_MAX_I32_MAX 2147483647i322147483647i32 最大有符号的 32 位数值Maximum signed 32-bit value
_UI32_MAX_UI32_MAX 0xffffffffui320xffffffffui32 最大无符号的 32 位数值Maximum unsigned 32-bit value
_I64_MIN_I64_MIN (-9223372036854775807 - 1)(-9223372036854775807 - 1) 最小有符号的 64 位数值Minimum signed 64-bit value
_I64_MAX_I64_MAX 92233720368547758079223372036854775807 最大有符号的 64 位数值Maximum signed 64-bit value
_UI64_MAX_UI64_MAX 0xffffffffffffffffui640xffffffffffffffffui64 最大无符号的 64 位数值Maximum unsigned 64-bit value
_I128_MIN_I128_MIN (-170141183460469231731687303715884105727i128 - 1)(-170141183460469231731687303715884105727i128 - 1) 最小有符号的 128 位数值Minimum signed 128-bit value
_I128_MAX_I128_MAX 170141183460469231731687303715884105727i128170141183460469231731687303715884105727i128 最大有符号的 128 位数值Maximum signed 128-bit value
_UI128_MAX_UI128_MAX 0xffffffffffffffffffffffffffffffffui1280xffffffffffffffffffffffffffffffffui128 最大无符号的 128 位数值Maximum unsigned 128-bit value
SIZE_MAXSIZE_MAX 如果已定义 _WIN64 或为 UINT_MAX,则与 _UI64_MAX 相同same as _UI64_MAX if _WIN64 is defined, or UINT_MAX 最大本机整数大小Maximum native integer size
RSIZE_MAXRSIZE_MAX 与 (SIZE_MAX >> 1) 相同same as (SIZE_MAX >> 1) 最大安全裤整数大小Maximum secure library integer size

浮点类型常量Floating-point type constants

以下常量提供了 long double、double 和 float 数据类型的范围和其他特性:The following constants give the range and other characteristics of the long double, double and float data types. 要使用这些常量,请在源文件中包含 float.h 标头:To use these constants, include the float.h header in your source file:

#include <float.h>
返回的常量Constant “值”Value 描述Description
DBL_DECIMAL_DIGDBL_DECIMAL_DIG 1717 十进制位数的舍入精度# of decimal digits of rounding precision
DBL_DIGDBL_DIG 1515 精度的小数位数# of decimal digits of precision
DBL_EPSILONDBL_EPSILON 2.2204460492503131e-0162.2204460492503131e-016 最小,这样 1.0 + DBL_EPSILON != 1.0Smallest such that 1.0 + DBL_EPSILON != 1.0
DBL_HAS_SUBNORMDBL_HAS_SUBNORM 11 类型支持低能数(非规格化)数Type supports subnormal (denormal) numbers
DBL_MANT_DIGDBL_MANT_DIG 5353 有效数字(尾数)的位数# of bits in significand (mantissa)
DBL_MAXDBL_MAX 1.7976931348623158e+3081.7976931348623158e+308 最大值Maximum value
DBL_MAX_10_EXPDBL_MAX_10_EXP 308308 最大十进制指数Maximum decimal exponent
DBL_MAX_EXPDBL_MAX_EXP 10241024 最大二进制指数Maximum binary exponent
DBL_MINDBL_MIN 2.2250738585072014e-3082.2250738585072014e-308 最小正规值Minimum normalized positive value
DBL_MIN_10_EXPDBL_MIN_10_EXP (-307)(-307) 最小十进制指数Minimum decimal exponent
DBL_MIN_EXPDBL_MIN_EXP (-1021)(-1021) 最小二进制指数Minimum binary exponent
_DBL_RADIX_DBL_RADIX 22 指数基数Exponent radix
DBL_TRUE_MINDBL_TRUE_MIN 4.9406564584124654e-3244.9406564584124654e-324 最小次正规值Minimum positive subnormal value
FLT_DECIMAL_DIGFLT_DECIMAL_DIG 99 十进制位数的舍入精度Number of decimal digits of rounding precision
FLT_DIGFLT_DIG 66 十进制位数的精度Number of decimal digits of precision
FLT_EPSILONFLT_EPSILON 1.192092896e-07F1.192092896e-07F 最小,这样 1.0 + FLT_EPSILON != 1.0Smallest such that 1.0 + FLT_EPSILON != 1.0
FLT_HAS_SUBNORMFLT_HAS_SUBNORM 11 类型支持低能数(非规格化)数Type supports subnormal (denormal) numbers
FLT_MANT_DIGFLT_MANT_DIG 2424 有效数字(尾数)的位数Number of bits in significand (mantissa)
FLT_MAXFLT_MAX 3.402823466e+38F3.402823466e+38F 最大值Maximum value
FLT_MAX_10_EXPFLT_MAX_10_EXP 3838 最大十进制指数Maximum decimal exponent
FLT_MAX_EXPFLT_MAX_EXP 128128 最大二进制指数Maximum binary exponent
FLT_MINFLT_MIN 1.175494351e-38F1.175494351e-38F 最小正规值Minimum normalized positive value
FLT_MIN_10_EXPFLT_MIN_10_EXP (-37)(-37) 最小十进制指数Minimum decimal exponent
FLT_MIN_EXPFLT_MIN_EXP (-125)(-125) 最小二进制指数Minimum binary exponent
FLT_RADIXFLT_RADIX 22 指数基数Exponent radix
FLT_TRUE_MINFLT_TRUE_MIN 1.401298464e-45F1.401298464e-45F 最小次正规值Minimum positive subnormal value
LDBL_DIGLDBL_DIG 1515 精度的小数位数# of decimal digits of precision
LDBL_EPSILONLDBL_EPSILON 2.2204460492503131e-0162.2204460492503131e-016 最小,这样 1.0 + LDBL_EPSILON != 1.0Smallest such that 1.0 + LDBL_EPSILON != 1.0
LDBL_HAS_SUBNORMLDBL_HAS_SUBNORM 11 类型支持低能数(非规格化)数Type supports subnormal (denormal) numbers
LDBL_MANT_DIGLDBL_MANT_DIG 5353 有效数字(尾数)的位数# of bits in significand (mantissa)
LDBL_MAXLDBL_MAX 1.7976931348623158e+3081.7976931348623158e+308 最大值Maximum value
LDBL_MAX_10_EXPLDBL_MAX_10_EXP 308308 最大十进制指数Maximum decimal exponent
LDBL_MAX_EXPLDBL_MAX_EXP 10241024 最大二进制指数Maximum binary exponent
LDBL_MINLDBL_MIN 2.2250738585072014e-3082.2250738585072014e-308 最小正规值Minimum normalized positive value
LDBL_MIN_10_EXPLDBL_MIN_10_EXP (-307)(-307) 最小十进制指数Minimum decimal exponent
LDBL_MIN_EXPLDBL_MIN_EXP (-1021)(-1021) 最小二进制指数Minimum binary exponent
_LDBL_RADIX_LDBL_RADIX 22 指数基数Exponent radix
LDBL_TRUE_MINLDBL_TRUE_MIN 4.9406564584124654e-3244.9406564584124654e-324 最小次正规值Minimum positive subnormal value
DECIMAL_DIGDECIMAL_DIG 与 DBL_DECIMAL_DIG 相同same as DBL_DECIMAL_DIG 默认(双精度)十进制位数的舍入精度Default (double) decimal digits of rounding precision

请参阅See also

全局常量Global Constants