Siechfred: Array durchlaufen

Beitrag lesen

Das ist Murks. Wenn du ein Array einem Skalar zuweist, ist das Ergebnis das letzte Element:

my $tmp = ('c', 'd', 'e', 'f', 'g');

print  $tmp;

  
Sorry, aber \*das\* ist noch größerer Murks - ein Array ist nunmal keine Liste. Entweder Du verwendest eine Arrayreferenz, dann musst Du \*erst\* dereferenzieren und \*dann\* den skalaren Kontext anwenden:  
  
~~~perl
my $tmp = ['c', 'd', 'e', 'f', 'g'];  
print scalar @$tmp;

Oder Du verwendest das korrekte Sigil:

my @tmp = ('c', 'd', 'e', 'f', 'g');  
print my $anz = @tmp;

Siechfred

--
Hinter den Kulissen passiert viel mehr, als man denkt, aber meistens nicht das, was man denkt.