我已经搜索了一段时间,但找不到这个看似简单的问题的明确答案:int 的默认长度是多少?
我知道默认情况下,一个 int 是有符号的。但它是短的还是长的?
根据下一页中的“基本数据类型”表,默认情况下 int 是 long int(4 字节)。 http://www.cplusplus.com/doc/tutorial/variables/
它总是正确的,还是取决于操作系统(32 位/64 位)、编译器或其他因素?
最佳答案
这取决于编译器实现者。 int
应该是平台的最佳“ native ”长度。这里的最佳 native 通常是指对于目标处理器来说最方便/最有效/最快速的大小。通常您可以期望 int
与处理器的(整数)寄存器具有相同的大小。
正如其他人指出的那样,编译器必须遵守关于各种整数类型大小的特定关系,因此实现者不能自由选择任何东西。例如,int
不能大于long
,等等。
你常说programming models与这些问题的关系,例如编译器可以根据所选模型选择使各种类型具有不同的大小。
关于C++:int 的默认长度是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3618011/