print时的差异。

print时的差异。

print时的差异。
@array = (1,2,3);
print @array;
print "@array";

为什么第一个print打印出的是紧排的123,而第二个print却是中间隔开的1 2 3?
第一种是打印出...
第一种是打印出来@array数组的内容。
第二种是把@array赋值给一个匿名字符串,并且打印出来这个字符串。
我知道第二种是...
我知道第二种是字符串,但是应该也是紧排输出才是啊,为什么会有间隔呢?
因为你让@array...
因为你让@array成为了字符串。他就是这么设计的呀。
还有些不解,但...
还有些不解,但姑且这么接受吧,谢谢!
在这种情况下pe...
在这种情况下perl使用默认的输出域分割符对数组进行插植,通常这个输出域分割符是空格,在print对表进行插植的时候,会输出这个符号,这个符号存在$"中,如果$"=undef,则就没有这个问题了.
ok,明白了,谢...
ok,明白了,谢谢!