慕粉1435423470
2019-03-12 11:26
首先a=100,
第一个输出的是a++,这时候是先取值再赋值,所以输出是100(但是实际a值输出后变成了101);
第二个输出的是++a,这时候是先赋值再取值,所以输出的是102(也就是101+1=102,这时候a已经是102);
第三个输出的是--a,这时候和上面一样,输出101(也就是102-1=101,这时候a也就变成101了);
第四个输出的是a--,还是先取值再运算,所以输出的是101(但是实际值已经是100了)
然后第五个输出的是a+1,也就是101(100+1);
最后输出a的值100(转了一圈又回来了);
好吧本来我理解这个自增自减是有点问题的,结果自己打出来这么一分析感觉又能理解了。按我现在的理解这个a++,++a什么的其实是包含了
一个赋值的过程,前面的运算结果会影响后面的计算,是环环相扣的是吧,,,这样理解对吗?
恍然大悟
看完你的说法我也终于理解了
先赋值再取值++a 为什么输出是102 不是101吗 ,好就算这个算法对,但是下面--a不是按照这样算的吗?
102赋值 101 取值 再-1 不应该是100吗?求大神解答
dui
C语言入门
926896 学习 · 21532 问题
相似问题