$a = 2; $b = &$a; echo (++$a) + ($a++) ; 为什么答案是7不是6 本帖最后由 lscxp 于 2013-08-29 18:18:23 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 看这帖http://bbs.csdn.net/topics/390571704一天居然两人问同一个问题 $b = &$a;应该是把变量a变成引用类型了。$a = 2;echo (++$a) + ($a++) ;过程是 先运行$a自增,然后把自增后的结果返回,就是33+ ($a++) $a++的结果是3,然后会执行$a自增,但是表达式的结果已经返回了就是3所以输出是 3+3 ,a是4而$a = 2;$b = &$a;echo (++$a) + ($a++) ;则不同,(++$a)不受影响,($a++)和之前不一样,之前应该是返回 $a的值,现在应该是返回指向$a的地址(当然还是要通过地址获取实际值的)返回$a的地址后,会执行$a自增,a变成4, 而之前只是获取到了$a的地址,现在会进行寻址获取值,所以获取到的是4结果是 3+4 $a = 2;$b = &$a;echo ($a++) + (++$a); //结果是6这个怎么解释呢? &$a 表示链接 所以3+3=6 请教下PHP操作数据库的写法上的小问题 急用,求高手,fsockopen获取人人网,gzip格式怎么转换? 如何取不重复的值 用header("location:1.php")转向到了1.php,但如何在打开1.PHP之前刷新它呢? 关于 文件夹权限的问题 CSDN的积分逻辑漏洞 关于windowsXP下,配置PHP5.postgre8.3,Apache2.2的问题 请问如何取指定的以某个代码开始到以某个代码结束的字段?谢谢! 请问高人有关SESSION之问题!!!! 我自己写的网页在IE下面是乱码,谷歌正常。 yum remove php删除不了php 关于php curl的问题
http://bbs.csdn.net/topics/390571704一天居然两人问同一个问题
应该是把变量a变成引用类型了。$a = 2;
echo (++$a) + ($a++) ;
过程是
先运行$a自增,然后把自增后的结果返回,就是3
3+ ($a++)
$a++的结果是3,然后会执行$a自增,但是表达式的结果已经返回了就是3
所以输出是 3+3 ,a是4
而
$a = 2;
$b = &$a;
echo (++$a) + ($a++) ;
则不同,(++$a)不受影响,
($a++)和之前不一样,之前应该是返回 $a的值,
现在应该是返回指向$a的地址(当然还是要通过地址获取实际值的)
返回$a的地址后,会执行$a自增,a变成4, 而之前只是获取到了$a的地址,
现在会进行寻址获取值,所以获取到的是4
结果是 3+4
$b = &$a;
echo ($a++) + (++$a); //结果是6
这个怎么解释呢?