首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

c#中 i=i++;的结果很奇怪 哪位高手能帮小弟我解释一下

2012-04-10 
c#中 ii++的结果很奇怪 谁能帮我解释一下?在学习c#时,发现 ii++的结果很奇怪 ,具体代码如下:int i10

c#中 i=i++;的结果很奇怪 谁能帮我解释一下?
在学习c#时,发现 i=i++;的结果很奇怪 ,具体代码如下:
int i=10;
i=i++;
结果竟然还是 i=10;
按理说,先赋值,再加一,结果应该是i=11;但是结果却是i=10;感觉很是费解,各位高手, 谁能帮我解释一下?谢谢!

[解决办法]
假设代码

C# code
int i=10;i=(i++)*2;
[解决办法]
c#解释 i=i++; 相当于这样
int i=10;
int tmp = i;
i=i+1;
i=tmp;
[解决办法]
i = i++;

1. 取出 i 的值
2. i 自增
3. i = 刚刚取出来的值

所以 i 最终还是原来的值

热点排行