Rumah  >  Artikel  >  pembangunan bahagian belakang  >  a++ 和 ++a 的区别

a++ 和 ++a 的区别

Guanhui
Guanhuiasal
2020-05-30 14:34:0128605semak imbas

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教程

Atas ialah kandungan terperinci a++ 和 ++a 的区别. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn