Thema: Delphi strin nach array of byte

Einzelnen Beitrag anzeigen

Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#6

Re: strin nach array of byte

  Alt 17. Jan 2007, 15:51
Zitat von yörsch:
noch ne´variante
Delphi-Quellcode:
type
  TTest = record
   case boolean of
   true : (Text : array [0..125] of char);
   false: (Zahl : array [0..125] of byte);
   end;

var OutStr : String;
TEST : TTest;
i : Integer;
b : Byte;
begin
  OutStr := 'Help';
  for i:=0 to Length(OutStr)-1 do
    TEST.Text[i] := OutStr[i];
  b := TEST.Zahl[0];
Ist aber auch um einiges langsamer als CopyMemory oder auch gleich Move (CopyMemory ruft auch nur move auf). Ganze Speicherbereiche als Block zu kopieren ist immer das schnellste, geht in nahezu konstanter Zeit (ganz unabhängig von der Anzahl der zu kopierenden Bytes). In deiner Variante wird die Schleife natürlich sehr oft durchlaufen und dann auch noch in jeder Iteration ein Wert gelesen und geschrieben...
  Mit Zitat antworten Zitat