C and C++ Integer Limits
Microsoft Specific
The limits for integer types in C and C++ are listed in the following table. These limits are defined in the C standard header file <limits.h>
. The C++ Standard Library header <limits>
includes <climits>
, which includes <limits.h>
.
Microsoft C also permits the declaration of sized integer variables, which are integral types of size 8-, 16-, 32- or 64-bits. For more information on sized integers in C, see Sized Integer Types.
Limits on Integer Constants
Constant | Meaning | Value |
---|---|---|
CHAR_BIT | Number of bits in the smallest variable that is not a bit field. | 8 |
SCHAR_MIN | Minimum value for a variable of type signed char . |
-128 |
SCHAR_MAX | Maximum value for a variable of type signed char . |
127 |
UCHAR_MAX | Maximum value for a variable of type unsigned char . |
255 (0xff) |
CHAR_MIN | Minimum value for a variable of type char . |
-128; 0 if /J option used |
CHAR_MAX | Maximum value for a variable of type char . |
127; 255 if /J option used |
MB_LEN_MAX | Maximum number of bytes in a multibyte character. | 5 |
SHRT_MIN | Minimum value for a variable of type short . |
-32768 |
SHRT_MAX | Maximum value for a variable of type short . |
32767 |
USHRT_MAX | Maximum value for a variable of type unsigned short . |
65535 (0xffff) |
INT_MIN | Minimum value for a variable of type int . |
-2147483647 - 1 |
INT_MAX | Maximum value for a variable of type int . |
2147483647 |
UINT_MAX | Maximum value for a variable of type unsigned int . |
4294967295 (0xffffffff) |
LONG_MIN | Minimum value for a variable of type long . |
-2147483647 - 1 |
LONG_MAX | Maximum value for a variable of type long . |
2147483647 |
ULONG_MAX | Maximum value for a variable of type unsigned long . |
4294967295 (0xffffffff) |
LLONG_MIN | Minimum value for a variable of type long long . |
-9,223,372,036,854,775,807 - 1 |
LLONG_MAX | Maximum value for a variable of type long long . |
9,223,372,036,854,775,807 |
ULLONG_MAX | Maximum value for a variable of type unsigned long long . |
18,446,744,073,709,551,615 (0xffffffffffffffff) |
If a value exceeds the largest integer representation, the Microsoft compiler generates an error.
END Microsoft Specific