<limits.h>c语言所有数据类型最大值和最小值的规定

ISO C标准对C语言中数据类型的大小做了要求,下表展示了这个要求,其中有不同数据类型的最小值的要求,也有在32bit和64bit操作系统下的实现。

C语言数据类型大小规定与实现

名称 说明 可接受的最小值 32bit系统典型值 64bit系统典型值
CHAR_BIT char的位数 8 8 8
CHAR_MAX char的最大值   127 127
CHAR_MIN char的最小值   -127 -127
SCHAR_MAX signed char的最大值 127 127 127
SCHAR_MIN signed char的最小值 -127 127 127
UCHAR_MAX unsigned char的最大值 255 255 255
INT_MAX int的最大值 32767 2147483647 2147483647
INT_MIN int的最小值 -32767 -2147483648 -2147483648
UINT_MAX unsigned int的最大值 65535 4294967295 4294967295
SHRT_MAX short的最大值 32767 32767 32767
SHRT_MIN short的最小值 -32767 -32768 -32768
USHRT_MAX unsigned short的最大值 65535 65535 65535
LONG_MAX long的最大值 2147483647 2147483647 9223372036854775807
LONG_MIN long的最大值 -2147483647 -2147483648 -9223372036854775808
ULONG_MAX unsigned long的最大值 4294967295 4294967295 18446744073709551615
LLONG_MAX long long的最大值 9 223 372 036 854 775 807 9 223 372 036 854 775 807 9 223 372 036 854 775 807
LLONG_MIN long long的最小值 -9 223 372 036 854 775 807 -9 223 372 036 854 775 808 -9 223 372 036 854 775 808
ULLONG_MAX unsigned long long的最大值 18 446 744 073 709 551 615 18 446 744 073 709 551 615 18 446 744 073 709 551 615
MB_LEN_MAX 在一个多字节常量中的最大字节数 1 6 16

总结下来就是,32bit系统中long占32bit,64bit系统中long占64bit。32和64只有这么一个区别(典型情况下)

原文地址:https://www.cnblogs.com/mindulmindul/p/12267503.html