c语言中,int和short int的区别,好像他们的取值范围相同啊

如题所述

int占一个机器字长。在32位系统中int占32位,也就是4个字节,而在16位系统中,int占16位,即2个字节。C++标准只限制了short int不能超过int的长度,也可以说没什么大的不同 希望能帮到你
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-09-09
int占一个机器字长。在32位系统中int占32位,也就是4个字节,而在老式的16位系统中,int占16位,即2个字节。而C++标准中只限制规定short int不能超过int的长度,具体长度的可以由C++编译器的实现厂商自行决定。目前流行的32位C++编译器中,通常int占4字节,short int占2字节。其中short int可以简写为short。类似地,C++标准只限制了long int不得小于int的长度,具体也没有作出限制。
第2个回答  2011-09-09
基本型 int 2字节 -32768~32767
短整型 short 2字节 -32768~32767

同样的长度以及范围

(1)C/C++规定int字长和机器字长相同;
(2)操作系统字长和机器字长未必一致;
(3)编译器根据操作系统字长来定义int字长;
整形变量是不是32位这个问题不仅与具体的CPU架构有关,而且与编译器有关,所以int可以为32为或16为,而short为短整型变量,只能为16位
第3个回答  2011-09-21
例如:short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?

short s1 = 1; s1 = s1 + 1;有错,s1是short型,s1+1是int型,不能显式转化为short型。可修改为s1 =(short)(s1 + 1) 。short s1 = 1; s1 += 1正确。

int是是4个字节 short是2个字节
第4个回答  2011-09-09
short int 的长度 不大于int 的长度,你可以用sizeof(int) 和 sizeof(short int)看 他们的大小。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网