Thread Uninitialised Value - Problem
(8 answers)
Opened by Corni_Cornflake at 2017-08-30 14:46
Naja,
der "Fehler" ist nur eine Warnung. Du hast im gezeigten Code nur einen Vergleich mit eq; Du kriegst sogar die Zeilenummer genannt. Also überlegen wir mal: Code (perl): (dl
)
1 2 3 4 $counter = 0; $anapher_0 = (); ... unless ($anapher_0[$counter] eq $satz) { Im ersten Durchlauf ist $counter = 0 und es wird $anapher_0[0] mit $satz vergleichen. @anapher_0 ist aber zu dem Zeitpunkt noch ein leeres Array; also ist $anapher_0[0] nicht definiert. Das sagt Dir die Meldung. Entweder belegst Du $anapher_0 mit Werten oder einem Startwert, sodass $anapher_0[0] bereits definiert ist (falls das geht. Ich habe den Code nur überflogen; keine Ahnung, was der Code treibt). Oder Du prüfst vor dem Vergleich, ob $anapher_0[0] definiert ist: Code (perl): (dl
)
if ( defined $anapher_0[$counter] && $anapher_0[$counter] ne $satz) { (Code ungetestet) Das setzt allerdings voraus, dass undef kein valider Wert des Arrays sein soll. Last edited: 2017-08-30 15:38:07 +0200 (CEST) meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen! |