<limits.h>头文件
<limits.h>头文件定义了多个宏,这些宏会扩展为标准整数类型的各种限制和参数。ISO/IEC 9899:2018标准第5.2.4.2.1 Sizes of integer types <limits.h>节列出了这些宏、它们的含义以及对其值的约束(或限制)。ISO/IEC 9899:2018标准Annex E部分对这些宏作了概括。
<limits.h>头文件中定义的宏应可替换为适用于#if预处理指令的常量表达式。
如果char类型对象可以是负值,宏CHAR_MIN和宏SCHAR_MIN值相同,宏CHAR_MAX和宏SCHAR_MAX值相同;否则宏CHAR_MIN值为0,宏CHAR_MAX和宏UCHAR_MAX值相同。宏UCHAR_MAX值等于2CHAR_BIT-1。
<limits.h>头文件中定义的与整数类型有关的宏具体如下:
宏(macro):CHAR_BIT | 表示非位字段最小对象位数的宏。 |
CHAR_MAX | 表示char类型对象最大值的宏。 |
CHAR_MIN | 表示char类型对象最小值的宏。 |
INT_MAX | 表示int类型对象最大值的宏。 |
INT_MIN | 表示int类型对象最小值的宏。 |
LLONG_MAX | 表示long long int类型对象最大值的宏。 |
LLONG_MIN | 表示long long int类型对象最小值的宏。 |
LONG_MAX | 表示long int类型对象最大值的宏。 |
LONG_MIN | 表示long int类型对象最小值的宏。 |
MB_LEN_MAX | 表示多字节字符最大字节数的宏。 |
SCHAR_MAX | 表示signed char类型对象最大值的宏。 |
SCHAR_MIN | 表示signed char类型对象最小值的宏。 |
SHRT_MAX | 表示short int类型对象最大值的宏。 |
SHRT_MIN | 表示short int类型对象最小值的宏。 |
UCHAR_MAX | 表示unsigned char类型对象最大值的宏。 |
UINT_MAX | 表示unsigned int类型对象最大值的宏。 |
ULLONG_MAX | 表示unsigned long long int类型对象最大值的宏。 |
ULONG_MAX | 表示unsigned long int类型对象最大值的宏。 |
USHRT_MAX | 表示unsigned short int类型对象最大值的宏。 |