a++ 和 ++a 的区别

Guanhui
Guanhui 原创
2023-03-01 09:28:02 19451浏览

a++ 和 ++a 的区别

1、计算结果的不同,前者的结果跟程序执行过程有关,有可能是加上1,有可能不加1,而后者的结果是a加上1;

2、计算过程不同,前者计算过程是先执行a,之后在增加1,后者计算过程是先加上1,之后再执行a。

微信截图_20200530142913.png

例题

int a = 100; 最开始时a是100。

打印 a++; 这个printf会打印a++的值,注意是a++表达式的值,看我前面的讲解,a++的值就是a的值,也就是100。 别忘了这语句结束后a的值就会自增1(也就是副作用发生了)。

打印 ++a; 目前a的值为101。现在要打印++a表达式的值,++a的值就等于a+1,所以会打印出102。 此语句后a=101+1=102。

打印 --a; 这次要打印--a表达式的值,同自增一个道理,--a的值等于a-1,所以会打印出101。 此语句后a=102-1=101。

打印 a--; a--表达式的值就是a的值,所以打印出101。 此语句后a=101-1=100。

打印 a+1; 这表达式与自增无关,只是打印a+1的值,就是101。 对a本身的值没有影响(加法表达式没有副作用)。

打印 a; 这时a的值当然还是100了。

推荐教程:《PHP教程

以上就是a++ 和 ++a 的区别的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。