Hi theomega,
du hast drei Fehler drin:
1. partbeg ist nicht initialisiert, also liegt Speichermüssl drin,
2. partbeg selbst ist eine unsinnige Einrichtung, da du ja den jeweiligen Teil aus t löschst und damit sowieso immer von Stelle 1 kopieren musst und
3. der vierte Teil lässt sich nicht auf diese Weise herausfinden, weil kein Leerzeichen mehr in dem String vorhanden ist.
Wenn man diese Fehler bereinigt, funktioniert alles:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
t: String;
i: Integer;
partbeg, partend: Integer;
params: array[1..4] of String;
begin
t := 'ab cd efg h';
for i := 1 to 3 do begin
partend := Pos(' ', t);
params[i] := Copy(t, 1, partend - 1);
Delete(t, 1, partend);
end;
params[4] := t;
for i := 1 to 4 do
ShowMessage(params[i]);
end;
@Daniel B: Das Semikolon ist egal, solange ein begin davor steht, dann ist es nur eine leere Anweisung. Kritisch wird's natürlich, wenn man nur ein do dort stehen hat...
MfG,
d3g