#4. 数据类型的大小
你已经知道了怎么用sizeof
运算符来查看数据类型在存储器中的大小,但如果你想知道数据类保存的值的范围呢?例如,你知道int
在你的机器上占4字节,但int
变量能保存的最大正数和最小负数分别是多少呢?理论上可以通过它占用的字节数计算出来,但这很麻烦。
为此可以使用定义在limits.h头文件中的宏。如果你想知道long
可以保存的最大值,可以使用LONG_MAX
宏。short
可以保存的最小负数呢?用SHRT_MIN
。下面这个例子显示了int
和short
的范围:
宏的名字取自数据类型:INT
(int
),SHRT
(short
),LONG
(long
),CHAR
(char
),FLT
(float
)和DBL
(double
)。你可以在它们后面加上_MAX
(最大正数)或_MIN
(最小负数)。如果想查看更具体的数据类型,还可以加上前缀U
(unsigned
)、S
(signed
)或L
(long
)。