int定义时总是短吗?

时间:2013-12-26 13:15:49

标签: c++

只是一个小问题: 今天我回到了变量类型可以容纳的值,我想知道没有short或long定义的int总是短或长,如有符号或无符号!

int i ; //short or long ?

5 个答案:

答案 0 :(得分:2)

两者都不是。它是一个整数类型。

答案 1 :(得分:2)

没有。 int是与shortlong不同的类型。 shortintlong可以有3种不同的尺寸。 (另请注意,通常不要将int修改为short intlong int,而是通常首选只写shortlong。)

答案 2 :(得分:2)

它既不是。在许多系统上,包括通常的Linux,int将是32位,short将是16,而long是64.然而,C语言无法保证 - 类型需要按大小排序,但它们不是' t必须是那些特定的大小(例如int在某些系统上可能是64位,或16)。

答案 3 :(得分:2)

答案是“不”。没有修饰符的intintshort int不大于int,且大小可能相同。 long int不小于int,但大小可能相同。这完全符合C ++标准,该标准还指出short必须至少为16位,而long应至少为32位。但是完全有可能拥有一台32或64位的机器。

答案 4 :(得分:1)

除非另有说明,否则int始终是签名的。

要知道, short是16位,long是32位,int是16位或32位,具体取决于编译器。 除非另有说明,否则所有这些都是默认签名的。