PHP中关于 &:引用符号的使用的问题。
2013-11-26 来自:Bono 3 人回应
  
<?php
$c=1;
$d=&$c;//$d=$c,这里不加&输出结果为4,加了输出就是5
echo (++$d)+($d++);
?>

为什么会这样呢?

2013-11-29 来自:小又又

简单来说可以理解为

<?php
$c = 1;
$c++;
//$pre_inc = $c;
$pre_inc = & $c;
$post_inc = $c++;

echo $pre_inc + $post_inc;

因为引用的关系,导致在运算($a++)时,改变了(++$a)的最终结果为3。

2013-11-27 来自:迷子

应该是这样的:
$d=$c时 表达式 (++$d)+($d++) => 先算括号内的 => (2)+(2)=4

$d=$c时 表达式 (++$d)+($d++) => 先算括号内的 => (2)+(3)=5

2013-11-27 来自:蒙面采花贼

简单来说可以理解为

  
<?php
$c = 1;
$c++;
//$pre_inc = $c;
$pre_inc = & $c;
$post_inc = $c++;

echo $pre_inc + $post_inc;

您的回应

你还未登陆,不能回应!登陆