将列表传递给Perl中的子例程

因为@_变量是Perl中的一个数组,所以可以用来为子例程提供列表。但是,由于Perl接受并解析列表和数组的方式,可能很难从@_中提取单个元素。如果您必须将列表与其他标量参数一起传递,则将list作为最后一个参数,如下所示-

示例

#!/usr/bin/perl
# Function definition
sub PrintList {
   my @list = @_;
   print "Given list is @list\n";
}
$a = 10;
@b = (1, 2, 3, 4);
# Function call with list parameter
PrintList($a, @b);

输出结果

执行以上程序后,将产生以下结果-

Given list is 10 1 2 3 4