我试图了解为什么会出现以下情况:
say 4 x 2.5 * 2;
生产
88
代替
44444
如下:
say 4 x (2.5 * 2);
我试图解释第二个的方式是,由于运算符 x 期望一个数字作为右参数 2.5 * 2 被计算为数字 5,然后 4 被视为产生“44444”的字符串。但我无法解释第一个!将其更改为打印也没关系。
print 4 x 2.5 * 2 . "\n"
也给
88
当然,我不打算编写这样的代码。我只是想了解这种行为。