Re: Perl, FreezeThaw und Hashes

Ferdinand Ihringer <[email protected]>
Newsgroups gmane.linux.suse.programming
Message-ID <[email protected]>
Hmmm... So klappt es:

Am Samstag 26 Februar 2005 23:38 schrieb Ferdinand Ihringer:
> 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;
>
my %newalphabet = %alphabet;
> 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

Verstehen tue ich das Problem trotzdem nicht. Es wird wohl mit dem each 
zusammenhängen, aber das %alphabet wird ja bei jedem Aufruf der Subroutine 
erneut übergeben.

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.