Thread 'z' == 0 ist gleich true?
(8 answers)
Opened by Gast at 2008-04-09 19:38
Habe hier aus Perl in 21 Tagen eine Codeschnipsel, den ich nicht verstehe:
Code (perl): (dl
)
1 2 3 4 5 6 while () { print 'Geben Sie die zu buchstabierende Zahl ein: '; chomp($num = <STDIN>); if ($num ne "0" && $num == 0) { # wenn $num ein String ... } Es geht hier um eine Eingabevalidierung (Es dürfen nur Zahlen im einstelligen Bereich eingegeben werden und der Autor erklärt Zeile 4 folgendermassen: wenn $num nicht das Zeichen 0 ist, aber im numerischen Vergleich zu 0 ausgewertet wird, muss $num ein String sein ????? Kurzum, es funktioniert und vereinfacht man die If-Anweisung zu: Code (perl): (dl
)
if ('z' == 0){doSomeThing();} wird der If-Block auch ausgeführt. Lediglich bei eingeschalteter Warnung motzt der Interpreter ein bißchen, führt die Anweisung aber trotzdem aus. Bin jetzt schon eine ganze Weile am grübeln und googeln, habe aber überhaupt keine Idee, wo der Hase im Pfeffer liegt. Ein paar klärende Worte würden mir gut über die Nacht helfen. |