Ich habe ein sehr sehr eigenartiges Problem mit einer Codestelle, die bei der Bearbeitung einer großen Menge von Daten ab und zu mal "nicht will". Ich kann mir das Problem überhaupt nicht erklären und hoffe, irgendjemand von Euch hat einen Tipp, in welche Richtung ich das Problem suchen soll.
Hier erst mal die Beschreibung: Die Fehlermeldung ist
Not an ARRAY reference at ...
und in der betreffenden Zeile steht
Alles klar dachte ich, dann geht wohl in manchen Fällen meine Arrayreferenz
$allmatch auf irgendeine Weise kaputt. Also suchte ich und suchte ich, bis ich schließlich vor der obigen Codezeile
print "Problemstelle: allmatch: ", Dumper $allmatch;
print "nr = [$nr]\n";
print "\$#\$allmatch = [$#$allmatch]\n";
print "ref \$allmatch = ", ref($allmatch), "\n";
einfügte und vor dem Programmabbruch die Ausgabe
Problemstelle: allmatch: $VAR1 = [
'10000000 ,'
];
nr = [0]
$#$allmatch = [0]
ref $allmatch = ARRAY
erhielt. Nun bin ich mit meinem Latein aber am Ende, wieviel "mehr" Arrayrefrenz kann denn etwas sein?
Ich habe es auch nochmal mit
if ($nr >= scalar @$allmatch) {
versucht, was aber zum selben Abbruch führte.
Ach ja: "This is perl, v5.8.6 built for MSWin32-x86-multi-thread" (ActiveState) auf Windows 2000 Professional.
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;
use strict; use warnings; Link zu meiner Perlseite