Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 加法语句中的增量运算符_Php - Fatal编程技术网

Php 加法语句中的增量运算符

Php 加法语句中的增量运算符,php,Php,有人能深入解释为什么会有这样的结果吗 以下是我的PHP代码: $x = 4; $x = $x+++$x++; echo $x; 执行过程如下: $x = $x++ + $x++; ($x = 4) $x = 4 + $x++; ($x = 5) $x = 4 + 5; ($x = 6) $x = 9; 有关Java中一个更复杂示例的更详细答案,请参见此答案:变量是相同的,为什么不在加法之前将值从4更改为5?x的值实际上是在加法之前的6,如我所示。好的,谢谢

有人能深入解释为什么会有这样的结果吗

以下是我的PHP代码:

$x = 4;
$x = $x+++$x++;
echo $x;

执行过程如下:

$x = $x++ + $x++;    ($x = 4)
$x = 4 + $x++;       ($x = 5)
$x = 4 + 5;          ($x = 6)
$x = 9;

有关Java中一个更复杂示例的更详细答案,请参见此答案:

变量是相同的,为什么不在加法之前将值从4更改为5?
x
的值实际上是在加法之前的
6
,如我所示。好的,谢谢。现在我明白它覆盖了6的值。为什么你坚持要用
java
c
标记它?因为它是关于执行顺序而不是语言。它是特定于语言的!不要为不相关的语言添加标记。@Andreas:所以这在所有三种语言中都是未定义的行为?那么你的答案是错误的,必须被否决。这是C中未定义的行为。