【发布时间】:2013-01-01 20:10:54
【问题描述】:
我试图在 Perl 中使用 . 和 , 运算符,但得到了一些我无法弄清楚的奇怪现象:
如果我运行这个:
print hello . this,isatest, program
输出是:
hellothisisatestprogram
我能理解的是,它将点运算符之前和之后的文本都视为字符串并将它们连接起来。
但是逗号呢?为什么它被省略而不是连接?
【问题讨论】:
-
启用严格和警告 (
use strict; use warnings;) 以摆脱裸字转字符串。然后,考虑:print "hello", "thisisatest", "program",没有.运算符 -print的行为是什么?好的,那么这与.运算符一起使用有何意义? (PS 有关特定运算符的问题,请参阅参考/手册/教程首先 - 在这种情况下,请参阅perlop。另请参阅perlvar中的$,和@ 中的print987654334@.) -
始终使用
use strict; use warnings;!
标签: perl parsing concatenation dot-operator