Es ist egal ob du vorher weißt wie lang es wird.
Spätestens wenn es benutzt werden soll, muß du die Größe anpassen, denn was es nicht gibt, das kann man nicht benutzen.
Notfalls eben mehrmals, wenn man es vorher nicht weiß.
Zitat:
und ich bekomme trotzdem eine Fehlermeldung.
Schön daß wir wissen welche.
Nja, dieses Kompilerschalter baut Prüfcodes ein, welche z.B. prüfen ob man auf "nichtvorhandenen" Array-Felder zugreifen will
und erzeugt dann
Exception mit einer "ordentliche" Fehlermeldung.
Ohne diese Prüfung passiert sonstewas, wenn man nicht auf ein existierendes Feld zugreift. (z.B. ein
Buffer Overrun)
Tja, Konsolenprogramme haben halt ein paar Nachteile. (die
VCL initialisiert und benutzt ein paar nette Features, vorallem in Bezug auf die Fehlerbehandlung)
Bau mal Folgendes um deinen Code drumrum (zwischen "begin" und "end
.").
Delphi-Quellcode:
try
// hier dein Code
except
on E:
Exception do begin
WriteLn('
Error (', E.ClassName, '
) : ', E.
Message);
ReadLn;
end;
end;
(in "halbwegs" aktuellen Delphis ist sowas ähnliches schon direkt in der Vorlage für ein neues Konsolenprogram mit drin)