Forum: Object-Pascal / Delphi-Language
by FredlFesl,
1. Mai 2011
Performance ist Dir egal, oder? Dein Code ist nämlich sehr langsam, da würde der Algorithmiker Pickel bekommen... ;-)
Forum: Object-Pascal / Delphi-Language
by FredlFesl,
28. Apr 2011
Also wenn ich einen PChar habe, und der zeigt auf Strings, die mit #0 voneinander getrennt sind, und zusätzlich habe ich noch die Gesamtlänge des Speicherbereiches, dann liegt es doch nahe, einfach mal durchzulaufen und ein ARRAY OF PCHAR oder eine TList zu erstellen, wenn man auf ein #0 stößt
Function SplitByNullChar (P : PChar; N : Integer) : TList;
Var
I : Integer;
C : Char;
Begin
...
Forum: Object-Pascal / Delphi-Language
by FredlFesl,
28. Apr 2011
Deine Funktion kommt nur mit kurzen Strings klar und ist vom Aufwand O(n^2), weil für jedes Token immer von Anfang an gesucht wird. Ob das Schneller ist, bezweifle ich mal ganz stark.
Im Gegensatz dazu ist die TStringList-Geschichte sehr viel mächtiger, denn sie kommt mit allen Stringtypen und mit in Gänsefüschen eingeschlossenen Texten klar, z.B. wird a,"b,c",d in drei Strings ("a", "b,c" und...