令short x=32767,分别执行x=x+1和++x,前者显示类型转换错误(int到short要强制转换),而后者则运行通过(x变成-32768),++x难道不和x=x+1等价吗,还是前者自带了一个强制类型转换?
解决方案 »
- 急, 如何让列表页能弹出个页面,好像用 jquery 如何做
- C# Socket 判斷消息已被接受
- 寻找 C#和VC套接字相互通讯的可执行源代码 谢谢
- C# 速度最快的字串匹配
- 2000/11/12转换成日本日期格式(平成12年11月12日)的问题
- C#编程处理xml问题(如何解析xml文件里包含的if...then...规则,并打印出来)。急求!!
- 如何监控进程对API函数的调用
- C# 播放SWF,为什么只能复制引用的DLL
- 今天去面试,公司出了一道题让回来作,但是不知道如何作?DX们指点一下啊,只有两天的时间。
- 招聘.net高手
- (200分)请大家讨论WindowsService及Hook编程问题(在线等)
- 分析分析这段语句,exception的写法。扩展讨论一下也好。
因此二者并不是完全等价的
你能懂他两的区别应该就懂这个了..
x=x+1
short都会类型转换成int计算..
exp:short a=1;
short b=2;
short c=a+b;//仍会报类型错误
(short) c=a+b;
或者 int c=a+b;
++x是short类型加1