首页 >后端开发 >PHP问题 >a++ 和 ++a 的区别

a++ 和 ++a 的区别

Guanhui
Guanhui原创
2020-05-30 14:34:0128651浏览

a++ 和 ++a 的区别

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