Frank Schönmann: Warum???

Beitrag lesen

hi!

»»  for ($j==1;$j<=$num;$j++) {
Schau dir am besten nochmal genau die Syntax einer for-Schleife an. Der erste
Parameter ist eine Zuweisung, kein Vergleich.
Ja das habe ich auch schon gesehen...aber es funktioniert auch so..probiers mal aus.

Das ist reiner Zufall, nichts weiter. Du hattest $j schon vorher deklariert und mit einem Wert initialisiert. Hättest du das weggelassen, würde es nicht mehr funktionieren.

Tatsächlich initialisiert Perl alle neuen Skalare mit 0 oder "" - übrigens eine Tatsache, die hier bei den meisten anscheinend nicht bekannt ist. Stell dir aber mal vor, du würdest irgendwann C oder C++ (oder auch beliebige andere Sprachen) programmieren, und hättest in deiner Variable dann - je nach Typ - irgendeinen zufälligen Wert stehen...

bye, Frank!