Perl, FreezeThaw und Hashes

Ferdinand Ihringer <[email protected]>
Newsgroups gmane.linux.suse.programming
Message-ID <[email protected]>
Hallo,

Ich habe folgendes Problem, dessen Lösung bestimmt einfach ist. Von der 
Struktur ist es folgendes Perlskript:
use FreezeThaw qw(cmpStr);

my $struktur = INPUT1;
my %alphabet = INPUT2;

while(my ($a, $b) = each %alphabet) {
 #Variante 1
 if (strCmp($struktur, $b) == 0) { 
  print "Gefunden $a\n" };
 #Variante 2
 if(strCmp($struktur, $b) == 0) {
  print "Gefunden $a\n"; return $a" }
}

Bei meinem Test wird dies als Subroutine fünfmal in einer Schleife aufgerufen 
und es sollte 'hallo' gefunden werden. Bei Variante 1 kommt das auch:
Gefunden: h
Gefunden: a
Gefunden: l
Gefunden: l
Gefunden: o
Bei Variante 2 hingegen nicht:
Gefunden: h
Gefunden: l
Gefunden: o
Muss ich das verstehen? Oder hat irgendwer eine Idee, woran dies liegen könnte 
und wo ich zu suchen haben? Gerade wundert mich das nur. Ich verändere ja den 
Hash nicht.

perl --version
This is perl, v5.8.5 built for i686-linux

Ferdinand

-- 
Um die Liste abzubestellen, schicken Sie eine Mail an:
    [email protected]
Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken
Sie eine Mail an: [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.