我试图在Perl中打印出一个连接的字符串,但是我得到了一个奇怪的结果。这是我的一些代码,我得到一个字符串并取出它的一部分并将其放入一个数组,@ array。然后,我试图获取该数组的片段并将它们连接成一个字符串。
@input = [];
while ( $in = <STDIN> ) {
print "# got $in";
chomp $in;
@inS = split(/ /, $in);
if ($inS[2] ne ".pau"){
print "$inS[2]";
push(@input, $inS[2]);
}
}
$inputSize = @input;
$stringN = "";
for ($i = 0; $i < $inputSize; $i++) {
$stringN .= $input[$i];
print "$stringN\n";
}
但是我从打印中得到的结果将这个大号附加到前面。这是一个例子。我没有得到“faIv”,而是得到:
ARRAY(0x500f450)faIv
好像它认为我的字符串是一个数组?这是因为与数组元素连接?任何帮助都会非常有帮助,谢谢。
答案 0 :(得分:4)
[]
是数组的引用。 @input = [];
创建一个名为@input
的数组,并将对空数组的引用作为@input
的第一个元素。如果要将@input
初始化为空数组,请使用@input = ();
。