リストのリファレンスのサイズを得る

  • $#$を使う。

my $arrayref = [ 1, 2, 3 ];
print $#$arrayref;

結果:2

※$#{$arrayref}でも可。
※$#{[1,2,3]}も同様の結果に。


  • scalar関数を使っても同じ事は実現できる。ただし、こちらは上記の方法+1の値になる。

my $arrayref = [ 1, 2, 3 ];
print scalar(@$arrayref),"\n";

結果:3



応用
  • ハッシュに格納したリストのリファレンスのサイズを得る


my %hash = ("key"=>[1,2,3,4,5]);
print $#{$hash{"key"}}; #結果:4

my $hashref = {"key"=>[1,2,3,4,5]};
print $#{$hashref->{"key"}}; #結果:4


関連項目

最終更新:2011年10月28日 19:19
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。