@配列名

perlでも配列変数を作成することができます。

$変数名[インデックス]

配列変数への値の代入は以下のように

$arg[0]=0;
$arg[1]=1;
$arg[2]=2;

します。でも、配列の数が10個とかに増えたときにこのような代入をするのは面倒です。
そこで

@配列名

という記法をつかって、以下のように

@arg = (0,1,2);

書くことができます。

@arg = (0,1,2);
($arg1,$arg2,$arg3) = @arg;
#$arg1 = $arg[0];
#$arg2 = $arg[1];
#$arg3 = $arg[2];
@arg  = (0,1,2);
@arg2 = @arg;
#$arg2[0] = $arg[0];
#$arg2[1] = $arg[1];
#$arg2[2] = $arg[2];
@arg  = (0,1,2);
@arg2 = (@arg,3,4,5);
#$arg2[0] = $arg[0];
#$arg2[1] = $arg[1];
#$arg2[2] = $arg[2];
#$arg2[3] = 3;
#$arg2[4] = 4;
#$arg2[5] = 5;
@arg  = (0,1,2);
@arg2 = (3,@arg,4,5);
#$arg2[0] = 3;
#$arg2[1] = $arg[0];
#$arg2[2] = $arg[1];
#$arg2[3] = $arg[2];
#$arg2[4] = 4;
#$arg2[5] = 5;
@arg  = (0,1,2);
@arg2 = (3,4,5,@arg);
#$arg2[0] = 3;
#$arg2[1] = 4;
#$arg2[2] = 5;
#$arg2[3] = $arg[0];
#$arg2[4] = $arg[1];
#$arg2[5] = $arg[2];
($arg1,$arg2,@arg) = (0,1,2,3,4,5);
#$arg1 = 0;
#$arg2 = 1;
#$arg[0] = 2;
#$arg[1] = 3;
#$arg[2] = 4;
#$arg[3] = 5;

注意

($arg1,@arg,$arg2) = (0,1,2,3,4,5);
#$arg1   = 0;
#$arg[0] = 1;
#$arg[1] = 2;
#$arg[2] = 3;
#$arg[3] = 4;
#$arg[4] = 5;
#$arg2   = undef;

配列は勝手に伸びます。