A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

求x,y的值?
int x=4
int y=(x++)+(++x)+(x*10)
求详细~!

8 个回复

倒序浏览
第一个括号,x++整体不变,(x++)等于4,x的值变成5
第二个,++x,x先加1,++x=6,x=6
第三个,x*10=6*10=60
所以y=4+6+60=70,x=6。
回复 使用道具 举报
duqiang1441 发表于 2015-9-14 23:35
第一个括号,x++整体不变,(x++)等于4,x的值变成5
第二个,++x,x先加1,++x=6,x=6
第三个,x*10=6*10=6 ...

谢谢大神,忽然就明白了!{:2_44:}
回复 使用道具 举报
长知识了  原来还可以这样
回复 使用道具 举报
技术分啊...
回复 使用道具 举报
so easy。。。后加和先加的区别
回复 使用道具 举报
..............................明白就好
回复 使用道具 举报
结果等于70    x先是4 之后变成5 ,执行++x变成6,最后结果70
回复 使用道具 举报
++和--
如果表达式中,只做++或--一件事情,那么前++/--和后++/--效果一样的;
        但如果表达式中做多件事情:
                前++/--:先自增/自减,然后再参与表达式的其它运算;
                后++/--:先参与表达式的运算,然后在自增/自减;
int x=4;
int y=(x++)+(++x)+(x*10);
1)先进行x++,x参与表达式的其它运算不变,x++=4但x变为5
2)(++)x是先将x自增再参与运算此时++x=6, x变为6
3)所以x*10=60
4)y=4+6+6*10=70
5)所以 x=6,y=70
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马