pl: Perl als "Hackersprache" - konkrete historische Beispiele?

Beitrag lesen

Nein. Und da wird nichts unmaskiert ausgegeben. Weil der Operator == einen numerischen Vergleich einfordert. So wird der ganze Block zu undef und ausgegeben wird "Alles Falsch!"

Da irrst du dich: http://tpcg.io/totSMv. Wenn einer der beiden Operanden von == ein String ist, wird dieser als numerischer Wert 0 interpretiert. Dadruch ergibt der Vergleich 0 == "iregendwas" immmer true.

Ja: Wenn man alle Warnungen abschaltet. Das ist jedoch nicht empfehlenswert! Vielmehr werden sämtliche Wanungen in den Status einer Exception erhoben, so daß man mit eval{} arbeiten kann, was einem try{}Block entspricht also auf Exceptions prüft.

Im Übrigen habe ich ja nicht umsonst genau dieses Stückchen CODE gezeigt. Denn die Frage zielte ja in Richtung Hack. So erledigt der eval{}Block gleich mehrere Dinge womit man sich Einiges an Prüfungen valider Benutzereingaben sparen kann. Der Code compiliert schon dann nicht, wenn der hex() Funktion unzulässige Zeichen übergeben wurden. Und natürlich auch dann nicht wenn am Vergleichsoperator Strings ankommen.

MfG

PS: Ich habe Dir dies alles auch schon mehrfach erklärt. Es ist nicht zielführend wenn Du immer wieder damit anfängst und dabei jedesmal nur manifestierst daß Du es nicht verstanden hast!