Registriert seit: 11. Nov 2005
Ort: Leipzig
274 Beiträge
Delphi 12 Athens
|
Re: Zeitoptimierung bei Stringzusammensetzung
12. Nov 2005, 09:28
Natürlich darf die Allgemeinheit das erfahren
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
i, j : integer;
st, sx: String;
c, n1, n2 : TLargeInteger;
begin
QueryPerformanceFrequency(c);
QueryPerformanceCounter(n1);
st := 'AB';
sx := '';
st2 := '';
SetLength(st2, 3000000); // neu
for i := 1 to 3000000 do
begin
if st[1] in ['0'..'9', 'A'..'F'] then
begin
sx := Char(StrToInt('$' + st[1] + st[2])); // neu
move(sx[1], st2[i], Length(sx)+1); // neu
end;
end;
SetLength(st2, Length(PChar(st2))); // etwaige NULL Strings abschneiden
QueryPerformanceCounter(n2);
Showmessage(format('Zeit: %g', [(n2 - n1)/c]));
Showmessage(IntToStr(Length(st2)));
|
|
Zitat
|