你看看能不能这样理解:- int a = 5;
- a = a++ - 5;
- Console.WriteLine(a);
- 等价于下面代码
- int a = 5;
- int b= a++ - 5;//其中先a-5,则b=0,a再自加,a=6
- a = b; //b赋值给a,则a=0
- Console.WriteLine(a);//输出0
复制代码 也就是说a++先执行表达式,执行的只是a++ -5,不包括 = ,即a执行表达式(a-5)后,表达式的值为0(还未进行赋值操作),a仍然为5,然后a自加,a=6,最后把表达式的值赋值给a,表达式的值为0,所以a=0 |