Perl::$_とか@_とかwhile(1)の無限ループとか

引き続きリャマ本とアルパカ本から

"$_"


my @list = qw(one two three);

for (@list) {
print "$_ ";
}

引数ひとつん時に使える

"@_"


#!/usr/bin/env perl

use strict;
use warnings;
use Data::Dumper;

my @num = (1..10);

sub total {

my $sum = shift @_;
print Dumper $sum;

foreach (@_) {
$sum += $_;
print Dumper $sum;
}

return $sum;

};

my $goukei = total(@num);
print "goukei is $goukei \n";


結果


$VAR1 = 1;
$VAR1 = 3;
$VAR1 = 6;
$VAR1 = 10;
$VAR1 = 15;
$VAR1 = 21;
$VAR1 = 28;
$VAR1 = 36;
$VAR1 = 45;
$VAR1 = 55;
goukei is 55

引数がたくさんの時は @_ で。

while(1)

常に 真=1 なので永遠にループ。私も常に真であるような人間になりたい。


my $n = 0;

while(1) {
unless ($n eq 10){
print $n;
$n++;
} else {
print "Good bye .";
last;
}
}

こんな感じで使える。