perl 子函数传入多个数组

 

perl中的引用和C中的指针一样,用"\"标识,引用后可使用符号“->”取值。解引用则在对应的数据类型前加$,@ 或%。

这里这里用两数组求和做示例,引用传递的子函数的用法。

 1 use strict;
 2 
 3 my @s1=(1,13,4,25,6,27,8,22);
 4 my @s2=(11,2,34,5,6,23,1,54);
 5 
 6 my @sum=sums(\@s1,\@s2);
 7 
 8 foreach my $k(@sum){
 9     print "$k\n";
10 }
11 
12 my @res;
13 sums2(\@s1,\@s2,\@res);
14 
15 foreach my $k(@res){
16     print "$k\n";
17 }
18 
19 
20 sub sums2{
21     my ($lst1,$lst2,$res)=@_;
22     my $i=0;
23     while($i<@$lst1){
24         push @$res,$lst1->[$i]+$lst2->[$i];
25         $i++
26     }
27 }
28 
29 
30 sub sums{
31     my ($lst1,$lst2)=@_;
32     my $i=0; my @res;
33     while($i<@$lst1){
34         push @res,$lst1->[$i]+$lst2->[$i];
35         $i++;
36     }
37     return @res;
38 }

 

posted @ 2020-11-20 15:42  天使不设防  阅读(604)  评论(0编辑  收藏  举报