short i = 1 ; i=i+1;//这个错误 类型不对 为什么i+=1 就对了呢?
来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/07/15 10:16:32
short i = 1 ; i=i+1;//这个错误 类型不对 为什么i+=1 就对了呢?
![](http://img.wesiedu.com/upload/d/95/d9531d239e431d3c8725faa0c7f090de.jpg)
![](http://img.wesiedu.com/upload/d/95/d9531d239e431d3c8725faa0c7f090de.jpg)
![short i = 1 ; i=i+1;//这个错误 类型不对 为什么i+=1 就对了呢?](/uploads/image/z/19204507-19-7.jpg?t=short+i+%3D+1+%EF%BC%9B+i%3Di%2B1%EF%BC%9B%2F%2F%E8%BF%99%E4%B8%AA%E9%94%99%E8%AF%AF+%E7%B1%BB%E5%9E%8B%E4%B8%8D%E5%AF%B9+%E4%B8%BA%E4%BB%80%E4%B9%88i%2B%3D1+%E5%B0%B1%E5%AF%B9%E4%BA%86%E5%91%A2%3F)
这是一个类型高级与低级的问题,前面的C是short型的,后面的1为int型的,short型与int型的相加得到short型是不可取,因为必须将int型转换为short型,short型级别比int型高,可以short与int型相加存储为int型,但是却不能short与int型相加存储为short型,c=c+1属于short型与int型相加存储为short型,后者为short型与short型相加存储为short型,或许说得有点绕,你可以去查int、short、long这几个的优先级,里面就会谈到这个问题