Thema: Delphi c-strings aufsplitten

Einzelnen Beitrag anzeigen

mensch72

Registriert seit: 6. Feb 2008
838 Beiträge
 
#4

AW: c-strings aufsplitten

  Alt 17. Jul 2015, 18:38
oder anders herum "C"->"SL" (der Trick ist das Delphi für C-Strings diese zuweisen und deren Länge bestimmen kann... dann eine Inc mit Länge+1 zum Wechsel&Test des folgenden Strings)

Delphi-Quellcode:
var
  PA : PAnsiChar;
  SL : TStringList;
  S : String;
  len : Integer;

PA = .... // !!!entweder ganz leer als mindestens ein #0 am Beginn oder es MUSS am Ende ein #0#0 sein!!!

SL := TStringList.Create;

S := AnsiString(PA);
len := Length(S);
while len>0 do begin
    SL.Add(AnsiString(PA));
    Inc(PA,len+1); // wenn das Inc(<PChar>,x) nicht will... habe grade kein Delphi... CARDINAL(PA):=CARDINAL(PA)+len+1 oder irgend ein anderer funktionierender Cast tut es auch

    S := AnsiString(PA);
    len := Length(S);
end;

for S in SL do writeln(S);
Readln;

SL.Free;
  Mit Zitat antworten Zitat