Siechfred: Suche nach/Bedeutung von $#

Beitrag lesen

$# würde ich aber nicht verwenden, da es nicht unbedingt die Länge des Arrays ist, sondern eben nur der Index des letzten Elementes.

Es ist in Standardfällen sinnvoller als der skalare Kontext. Dein Fall ist ein Sonderfall, der so in der Praxis eher exotisch ist.

#!/usr/bin/perl -w

use strict;
my @arr = qw(1 2 3);
print "\nLänge:", $#arr;
$[ = 2;
print "\nLänge:", $#arr;


> Wobei davon aber natürlich dringend abzuraten ist.  
  
[Eben drum](http://perldoc.perl.org/perlvar.html#$%5B).  
  

> Sicherer ist: `$len = @array;`{:.language-perl}  
  
Eleganter ist `print for($[..$#arr);`{:.language-perl} ;)  
  
Siechfred

-- 
Obacht, hinter jedem noch so kleinen Busch könnte ein Indianer sitzen!