Perl数组引用总是在循环中重写自身

时间:2015-05-19 21:40:20

标签: arrays perl arrayref

我试图从文本文件中读取一些数字并将其存储为二维数组。我读了一行并推入另一个数组作为数组引用。但是我注意到主数组在所有行中只有最后一行。我怎么能纠正这个?提前致谢。这是我做的部分。

open IN, "a.txt";
@b=();

while (<IN>)

 { 
  $t =$_; 
  @a = split /\s+/,$t; 
  push(@b, \@a); 
 }

1 个答案:

答案 0 :(得分:7)

您只有两个阵列。你想要每行一个,加上@bmy每次执行时都会创建一个新变量,因此您可以使用以下内容:

my @b;
while (<IN>) { 
    my @a = split;
    push @b, \@a; 
 }

顺便说一句,你应该总是使用use strict; use warnings;