perl将数组传入函数的方法

楼主  收藏   举报   帖子创建时间:  2012-09-12 00:00 回复:0 关注量:100

perl将数组传入函数的方法与其它语言略有不同,需向函数传入数组引用,如下面的例子:

12345678910111213141516
#!/usr/bin/perluse strict;use warnings;my @a=1..100;my $total=sum(\@a);sub sum{my ($aref)=@_;my ($total)=0;foreach(@$aref){$total+=$_;}return $total;}print $total;###输出结果为5050

如果想将几个数组传入一个函数,那么需要多重引用。先将多个数组的引用组成一个数组,再将这个数组的引用的数组传入函数,如下面的例子。

1234567891011121314151617181920212223
#!/usr/bin/perluse strict;use warnings;my @a=1..3;my @b=4..6;my @c=7..9;my @tailings=popmany(\@a,\@b,\@c);sub popmany{foreach(@_){     ####获得每个数组的引用foreach(@$_){ ###利用引用获得每个元素print;}print "\n";}}=c 输出结果123456789