3

我有一个关于 PHP 5.6 中出现的 ** 运算符的问题。据我了解,它用于求幂。但是,如果我们想增加一个负数:

var_dump(-2 ** 2);
var_dump(pow(-2, 2));

那么在第一个例子中,结果是 -4 和 4 在第二个例子中。没关系?或者这个运算符的行为与 pow() 函数不同?

4

1 回答 1

5

它必须作为var_dump((-2) ** 2);yield的优先级4

所以-2 ** 2提高2到的幂,2然后使结果为4负。

请参阅运算符优先级

于 2015-09-03T20:51:45.260 回答