tja, beim debuggen sollte man halt gewisse optionen mal aktivieren (z.B. die Indexprüfung)
array immer 0-terminiert und immer ohne exceptions
Delphi-Quellcode:
var
s, s2: string;
sa: array[0..1023] of char;
begin
s := ' beispieltext |';
s2 := Copy(s, 1, High(sa));
move(PChar(s2)^, @sa, (length(s2) + 1) * SizeOf(Char));
showmessage(sa);
end;
oder mal etwas effektiver:
Delphi-Quellcode:
var
s: string;
sa: array[0..1023] of char;
i: integer;
begin
s := ' beispieltext |';
i := Max(Length(s), High(sa));
move(PChar(s)^, sa, i * SizeOf(Char));
sa[i] := #0;
showmessage(sa);
end;