Zitat von
schlecki:
versuch mal folgendes (siehe Kommentar):
Delphi-Quellcode:
function TForm3.Simikolons(Zeile:string):tintarr;
var i:integer;
begin
SetLength(Result,1);
for i:=1 to Length(Zeile) do
begin
if Zeile[i]=';' then
begin
SetLength(Result,Length(Result)+1);
Result[i-1]:=i; // hier liegt der Fehler. Zuweisung sollte eher an
// Result[Length(Result)] gehen.
end;
end;
end;
Um es etwas deutlicher zu machen, wenn an der fünften Position ein Semikolon ist, dann ist i=5 und length(result)=2.
Wenn Du dann auf Result[i] zugreifst geht das voll in die Schüssel.
Übrigens die Bereichsprüfung (und Überlaufprüfung), meckert da niemand?
Gruß
K-H