最近在收集PHP面试题的时候,遇到下面这道题:
若x,y为整型数据,以下语句执行的$y结果为:
$a = 1;++$a;
$y = $a++;
A:1
B:2
C:3
D:4
(答案在文末)
这道题主要考查的是php中$a++和++¥a的运行机制
先看一个例子:
$a = 1;
$i = ++$a;
echo $i; // 运行结果为2
echo $a; // 运行结果为2
首先a的值+1(a = a+1),然后再将a的值赋给i(a=i),最终结果就为:a的值等于2,i的值为2.
$i = ++ $a
//也相当于
$i = $i+1; $a=$i;
再看另一个例子:
$a = 1;
$i = $a++;
echo $a; //运行结果:2
echo $i; //运行结果:1
首先将a的值赋值给i(a=i),然后a的值再加1(a=a+1),所以最终结果为a=2,i=1。
$i = $a++;
//也就相当于于
$i = $a;$a = $a+1;
通过上面两个例子,我们明白 a + + 和 + + a 的 区 别 , 其 实 a++和++a的区别,其实 a++和++a的区别,其实a–和--$a是一样的道理,只不过是一个是加1,一个是减1而已。希望读者能自行领会。
试题的答案:B
最近乃至以后都会一直收录各种PHP面试题,欢迎大家在评论区留言分享领取