本帖最后由 cleader 于 2014-7-14 13:47 编辑
自加自减运算符分为“前加”“后加”“前减”“后减”.
int var1, var2 = 5, var3 = 6;
var1 = ++var2 + var3;
Console.WriteLine("{0}",var1);
看过基础视频的同学相信可以很轻松的答出这道题,var1的值为12.
看视频时,老师说如果是在表达式中有“后加”或“后减”运算符,就先参与表达式的运算然后再进行自加或自减运算。
但是如果出现下面这种情况,是不是有点晕菜呢。
int var1, var2 = 5, var3 = 6;
var1 = ++var2 + var3-- + var3;
Console.WriteLine("{0}",var1);
如果不运行的话这道题大家是否会觉的var1的值为18。但是最后运行的结果为17。
不是参与完表达式的运算,再进行自加自减吗?结果应该是18啊。
通过实验我发现,“后加”“后减”在表达式中,同一变量第二次出现的时候将使用“后加”“后减”执行后的结果。
请高手们多多指点!不吝赐教!
|