php程序如下:$a=1; $b=&$a; $b=$a++;echo $a,$b;请问为什么输出是1,1不是2,2?
展开全部
注意运算符的优先级
更多追问追答
追问
$a++ 是先把1赋给了$b,再++,但是++之后应该是2啊?难道白++了?
追答
首先、自增运算符++的优先级比赋值运算符=的优先级要高
关键在$b=$a++;这句话的执行
这句话在计算机内部的实现过程如下:temp(中间变量)
temp=$a;$a=temp+1;return temp;
$b获得返回的temp=1;
所以先执行的是$a++ 再执行$b的赋值过程$b=temp=1
所以最终结果会是1,1
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询