我依稀记得读过C ++标准中的一节,其中列出了整数类型的最小宽度要求。我再也找不到了。我能找到的最接近的是C标准中<limits.h>
的描述。
我在哪里可以找到整数类型的最小宽度?
答案 0 :(得分:2)
标准中定义的最小范围要求是(3.9.1 - 基本类型):
声明为字符(char)的对象应足够大,以存储实现的基本成员 字符集。
和
有五种标准的有符号整数类型:“signed char”,“short int”,“int”,“long int”和“long” long int“。在此列表中,每种类型提供至少与列表中前面的存储一样多的存储空间。 也可能存在实现定义的扩展有符号整数类型。标准和扩展签名 整数类型统称为有符号整数类型。 普通in具有自然尺寸 执行环境的架构 44 ;提供其他有符号整数类型以满足特殊要求 需要。
本页脚注44说:
44)即大到足以包含INT_MIN和INT_MAX范围内的任何值,如标题
<climits>
中所定义。
5.2.4.2.1中的C标准说:
// minimum value for an object of type int
INT_MIN -32767 // −(215 − 1)
// — maximum value for an object of type int
INT_MAX +32767 // 215 − 1