黑马程序员技术交流社区

标题: ++a,a++ [打印本页]

作者: 1936064423    时间: 2016-11-5 20:56
标题: ++a,a++
无法理解
作者: w梧桐叶    时间: 2016-11-5 21:36
强行记住,先加后加就行了

作者: w梧桐叶    时间: 2016-11-5 21:37
a++是先取a的值,再自加,++a是先自加,后取值。

作者: liyudong    时间: 2016-11-5 22:50
a++先参与式子运算再加1。++a加1后参与运算

作者: 雪中鱼01    时间: 2016-11-5 23:01
展开写就明白了

作者: feiruo521    时间: 2016-11-5 23:39
a++是a先赋值,然后a自加1
++a是a先自加,然后再赋值

作者: shu307856810    时间: 2016-11-5 23:44
前加加是a自身加1后再赋值,后加加是先赋值然后a自身加一

作者: 名侦探柯基    时间: 2016-11-7 11:33
本帖最后由 名侦探柯基 于 2016-11-7 11:49 编辑

分两部分理解1)++a和a++都是自增运算
所以进行自增运算之后,a的值都会+1
2)++a和a++表达式的值
++a加号在前面,所以先让a的原值+1作为表达式的值
a++加号在后面,所以a的原值作为表达式的值

直观一点就是:
int a=2,b=0;
b=++a;
执行第一行的时候,a=2,b=0;
执行第二行的时候,加号在前面,所以先让2+1赋值给b,b=3。由于a自增,所以a=3;

int a=2,b=0;
b=a++
执行第一行的时候,a=2,b=0;
执行第二行的时候,加号在后面,所以先让2赋值给b,b=2。由于a自增,所以a=3;








欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2