procedure TForm1.Button1Click(Sender: TObject); var S: string; C: array of Char; i: Integer; begin S := '12345'; SetLength(C, Length(S)); for i := Low(C) to High(C) do C[i] := S[i + 1]; end;
用循环太慢了! var S: string; C: array of Char; i: Integer; begin S := '12345'; SetLength(C, Length(S)); Move(S[1], C[0], Length(S)); end; 如果想要把结束符(#0)也复制过来则: var S: string; C: array of Char; i: Integer; begin S := '12345'; SetLength(C, Length(S) + 1); Move(S[1], C[0], Length(S) +1); end
var
S: string;
C: array of Char;
i: Integer;
begin
S := '12345';
SetLength(C, Length(S));
for i := Low(C) to High(C) do
C[i] := S[i + 1];
end;
var
S: string;
C: array of Char;
i: Integer;
begin
S := '12345';
SetLength(C, Length(S));
Move(S[1], C[0], Length(S));
end;
如果想要把结束符(#0)也复制过来则:
var
S: string;
C: array of Char;
i: Integer;
begin
S := '12345';
SetLength(C, Length(S) + 1);
Move(S[1], C[0], Length(S) +1);
end