Ranges of Data Types
◄Up► ◄Contents► ◄Index► ◄Back►
────────────────────────────────────────────────────────────────────────────
Constant: Range limits for data types
Context: Used to specify the ranges of C data types.
Synopsis: The implementation-dependent ranges of values allowed for
C data types.
The constants listed below give the ranges for the integral data
types and are defined in LIMITS.H:
Constant Value Meaning
SCHAR_MAX 127 Maximum signed char value
SCHAR_MIN -127 Minimum signed char value
UCHAR_MAX 255 Maximum unsigned char value
CHAR_BIT 8 Number of bits in a char
USHRT_MAX 0xffff Maximum unsigned short value
SHRT_MAX 32767 Maximum (signed) short value
SHRT_MIN -32767 Minimum (signed) short value
UINT_MAX 0xffff Maximum unsigned int value
ULONG_MAX 0xffffffff Maximum unsigned long value
INT_MAX 32767 Maximum (signed) int value
INT_MIN -32767 Minimum (signed) int value
LONG_MAX 2147483647 Maximum (signed) long value
LONG_MIN -2147483647 Minimum (signed) long value
CHAR_MAX 127 Maximum char value
CHAR_MIN -127 Minimum char value
NOTE: The /J compiler option changes the default char type
to unsigned, with the following limits:
CHAR_MAX 255 Maximum char value
CHAR_MIN 0 Minimum char value
The constants listed below give the range and other characteristics
of the double, float, and long double data types, and are defined
in FLOAT.H:
Constant Value Description
DBL_DIG 15 # of decimal digits of
precision
DBL_EPSILON 2.2204460492503131e-016 Smallest such that
1.0+DBL_EPSILON !=1.0
DBL_MANT_DIG 53 # of bits in mantissa
DBL_MAX 1.7976931348623158e+308 Max. value
DBL_MAX_10_EXP 308 Max. decimal exponent
DBL_MAX_EXP 1024 Max. binary exponent
DBL_MIN 2.2250738585072014e-308 Min. positive value
DBL_MIN_10_EXP (-307) Min. decimal exponent
DBL_MIN_EXP (-1021) Min. binary exponent
DBL_RADIX 2 Exponent radix
DBL_ROUNDS 1 Addition rounding: near
FLT_DIG 7 # of decimal digits of
precision
FLT_EPSILON 1.192092896e-07 Smallest such that
1.0+FLT_EPSILON !=1.0
FLT_GUARD 0
FLT_MANT_DIG 24 # of bits in mantissa
FLT_MAX 3.402823466e+38 Max. value
FLT_MAX_10_EXP 38 Max. decimal exponent
FLT_MAX_EXP 128 Max. binary exponent
FLT_MIN 1.175494351e-38 Min. positive value
FLT_MIN_10_EXP (-37) Min. decimal exponent
FLT_MIN_EXP (-125) Min. binary exponent
FLT_NORMALIZE 0
FLT_RADIX 2 Exponent radix
FLT_ROUNDS 1 Addition rounding: near
LDBL_DIG 19 # of decimal digits of
precision
LDBL_EPSILON 5.4210108624275221706e-020 Smallest such that
1.0+LDBL_EPSILON !=1.0
LDBL_MANT_DIG 64 # of bits in mantissa
LDBL_MAX 1.189731495357231765e+4932L Max. value
LDBL_MAX_10_EXP 4932 Max. decimal exponent
LDBL_MAX_EXP 16384 Max. binary exponent
LDBL_MIN 3.3621031431120935063e-4932L Min. positive value
LDBL_MIN_10_EXP (-4931) Min. decimal exponent
LDBL_MIN_EXP (-16381) Min. binary exponent
LDBL_RADIX 2 Exponent radix
LDBL_ROUNDS 1 Addition rounding: near