我不明白“push”返回的值

use strict; 

use warnings;

sub maximum_value {

my @array = @_;

my @array1 = shift(@_);

my @array2 = push(@_, 0);

print "@array\n";

print "@array1\n";

print "@array2\n";

my $i = 0;

foreach (@array) {

if ($i < $_) {

$i = $_;

}

}

print "\nMax Value is $i";

}

maximum_value(10, 15, 11, 13);

这是一个Perl脚本。我将这些值传递给子程序并将它们存储在@_中。为什么@array2评估为4?我不明白“push”返回的值

回答:

perldoc -f push

状态:

返回下列完成的推数组中元素的数目。

  1. @_开始有四个要素,因为你有4个参数调用你的子。
  2. shift@_数组中的第一个元素。 shift返回已移除的元素。 @_数组现在包含3个元素。
  3. push零到末尾的@_数组,其中又包含4个元素。 push返回元素的数量,并将其分配给@array2

以上是 我不明白“push”返回的值 的全部内容, 来源链接: utcz.com/qa/257887.html

回到顶部