Hi,
ich versuche gerade, mit pChar zu experimentieren.
Ich möchte das erste Wort eines PChar haben (brauche es für eine Firebird Udf, um aus einem String wie Meier, Klaus das Meier zu extrahieren).
Folgender Stand:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
Var
s: PChar;
c: Char;
dest: PChar;
p: Integer;
idx1: Integer;
begin
// nur zum Testen mit Debugger
s := PChar(' Solch ein Mist');
// Leerzeichen weg
p := 0;
while s[p] = ' ' do
begin
inc(p);
end;
idx1 := p;
while s[p] <> #0 do
begin
if (s[p] in [' ', ',']) then
Break;
inc(p);
end;
dest := StrAlloc(p -idx1 + 1);
// wie s[Idx1 -1] bis
// wie bekomme ich jetzt in dest sozusagen ein Copy(s, idx1 -1, p-1)
// also den Teilstring, nur ohne Umweg über Ansistrings
// Dest sollte dann 'Solch'#0 enthalten
Application.ProcessMessages;
end;
Danke, Frank