当前位置:好百科>生活百科>short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?

short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?

2024-11-01 23:22:53 编辑:zane 浏览量:589

short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?

的有关信息介绍如下:

赋值表达式等号两侧的转换的规则是右侧的向左侧的看齐,即右侧表达式要转换到和左边的类型一样。short s1 = 1; s1 = s1 + 1;错! s1 + 1,s1是short类型,1是int型,s1会自动转换为int型的1,与1相加后,得到int型的2,要向左侧的short类型的s1看齐,即需要通过强制类型转换。正确写法:s1 = (short) (s1 + 1);

short s1 = 1; s1 += 1;正确! 执行s1+=1;其实执行的是s1 = (short) (s1 + 1); 其中会有一个强制转换的过程。

正确的写法是:short s1=1;s1=(short)(s1+1); 或者 short s1=1;s1+=1;

拓展资料

short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?

长整型 是 long int, 内存长度用4字节(32 位二进制)。短整型 是 short int, 内存长度用2字节(16 位二进制)

int 型 默认 为 long int。(但国内还有人使用的古老的TC编译器int 型 默认 为 short int);

应用上绝配:能表示的数值范围不同。并尘指 long int 比 short int 范围大。而 short int 的优点 是节省 内存单元。其它没什么兄戚不同。

长整型 取值范围在[-2147483648,2147483648]。无符号长整型 也就是没有负号的长整型 取值范围在 [0,4294967259]。短整型 取值范围在[-32768,32768]。无符号短整型 取值范围在[0,65535]

参考资料

c语言——百度百科

版权声明:文章由 好百科 整理收集,来源于互联网或者用户投稿,如有侵权,请联系我们,我们会立即处理。如转载请保留本文链接:https://www.haobaik.com/life/186095.html
热门文章