现在的位置: 首页 > 综合 > 正文

a++和++a

2013年12月02日 ⁄ 综合 ⁄ 共 381字 ⁄ 字号 评论关闭

a++
表示先运算后自加;先取得a的值,然后进行一系列运算.然后再自加比如b=a+++a++;
这里面就有两个a++,都是先取得a的值,然后进行一系列运算(算数运算,关系运算,逻辑运算),这里的运算为加法运算和赋值运算,一系列运算结束以后再进行自加运算,得到a自身的值,假设a的值为1,这里b的值为2,a的值为3。
++a

表示先自加后运算;先将a进行自加运算,再参与一些列运算。比如b=++a+(++a);(b=++a+++a不允许,会报错:error C2105: '++' needs l-value)

这里有两个++a,先将a进行自加运算,经过两个++a,a的值变为3,然后进行加法运算b=6;不要想着第一个++a运算以后a=2;第二个++a运算以后a=3,然后b=2+3=5;这样是错误的。要将所有的++a运算完以后再将a进行一系列运算(算数运算,关系运算,逻辑运算)

抱歉!评论已关闭.