问答详情
源自:2-7 自加一,自减一 ( ++和- -)

哪位大神帮我理清一下计算思路,跪谢

$n=2;
$r=$n++ + ++$n + $n++; //$r=10
$r=++$n + $n++ + ++$n;  //$r=11
echo $r;  

提问者:慕运维6652247 2017-07-07 22:34

个回答

  • 慕莱坞7186251
    2018-12-31 16:01:20

    假设,y=5 求x=++y;  x=y++;  x=--y; x=y--; 弄清楚了就知道了,

    x=++y(我们理解成 x=“++y“      “++y”是多少  就是1+5, “++y”就是6, 那么 x=“++y”=6),

    x=y++(我们理解成 x=y 再算“++”,y=5,那么就x=5  ,y++=6,最终 5=6);

    同理 自己研究--

  • 阳火锅
    2017-12-12 13:29:02

    你的代码我根本不看,加加减减的有什么意义?

  • 慕粉1322353117
    2017-07-07 23:15:28

    ++在前是先累加再运算,++在后是先运算再累加。

    那么第一个$r:相当于2+4+4(第一个$n传进去是2,运算时用2运算,之后再加1,第二个$n传进去就变成3,先加1再运算,即为4,第三个$n传进去是4,则$r=2+4+4,此时$n=5);

    第二个$r同理:3+3+5

  • 酉禾_大嘚豆
    2017-07-07 22:52:30

    $n++ : 把($n++)作为一个整体表达式,$n 的值自增1,但是整个表达式的值是取 a自增  之前  的值;

    ++$n : 也把(++$n)作为一个整体表达式,$n的值自增1,但是整个表达式的值是取 a 自增  之后  的值。

    $r=2+4+4=10

    $n=3+3+5=11