perl 的求N次方问题

$x =3;
$y=2;
print $x**$y;
3的2次方,结果为9
$x =3;
$y=2;
print ($x)**$y;
同理,结果却为3,好像加了括号结果就不同,无论($x)**$y或者($x)**($y)或者$x**$y。

如果不能加括号,那用起来对一些代数岂不是很不方便?求高人解释

作者: dontbecoder   发布时间: 2011-06-16

($x)是一个含一个元素($x)的数组,它不支持**运算符,所以被打印的只有它自己。

>> 那用起来对一些代数岂不是很不方便?

不大用perl,也许是因为perl应用的侧重点不在计算吧。多用几个中间变量就行了。

作者: panghuhu250   发布时间: 2011-06-16