2

スクリプトに次のコードがあります。

while (my ($key, $value) = each @values) {
    if ( $key < $arraySize-1) {
        if ( $values[$key+1] eq "user") {
            $endcon=1;
        }
    }
    if ( ( $startcon == 1 ) && ( $endcon != 1 ) ) {
        $UptimeString .= $value;
    }
    if ( $value eq "up") {
        $startcon=1;
    }
    if ( $value eq "average:") {
        $LoadMinOne=$values[$key+1];
    }
}

コンパイル中、perl 5.14 では警告は表示されませんが、perl 5.10.1 では次の警告が表示されます。Type of arg 1 to each must be hash (not private array) at ./uptimep.pl line 21, near "@values) "

21号線はwhile (my ($key, $value) = each @values) {

これは何を意味するのでしょうか?

4

2 に答える 2