Perlめも(1)

変数名の前の「@」、「$」や「%」は、その変数が何として処理されるかを表わす。とかなんとか。

C:\Perl\bin>perl -e "@a=(1,2,3,4);print @a;"
1234
C:\Perl\bin>perl -e "@a=(1,2,3,4);@a[0,2]=@a[2,0];print @a;"
3214
C:\Perl\bin>perl -e "@a=(1,2,3,4);for(@a[0,3]){print;}"
14
C:\Perl\bin>perl -e "@a=(1,2,3,4);for(@a[0..3]){print;}"
1234
C:\Perl\bin>perl -e "%h=(one=>1,two=>2);print $h{one};"
1
C:\Perl\bin>perl -e "%h=(one=>1,two=>2);print @h{one,two};"
12
C:\Perl\bin>perl -e "%h=(one=>1,two=>2);for(@h{one,two}){print;}"
12
C:\Perl\bin>perl -e "%h=(one=>1,two=>2);@h{one,two}=@h{two,one};for(@h{one,two}){print;}"
21

test