Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.203 Beiträge
 
Delphi 12 Athens
 
#7

Re: Pointer to String; String to Pointer

  Alt 29. Apr 2009, 13:11
Zitat:
Delphi-Quellcode:
P := PChar(S);
// zurück mit
S := PChar(P);
wobei hier P:=PChar(s); das P nur auf den Anfang von S zeigt
und wenn man S mal ändert, dann könnte P auch mal schnell ins (n)Irgendwo hinzeigen

hier S:=PChar(P); wird aber der Text, auf welchen P zeigt kopiert und die Kopie in S abgespeichert.


wenn zu z.B. eine eigene Kopie in P anlegen willst ... wobei es da auch noch viele andere Wege gibt, welche teilweise sogar noch direkt auf Strings/Texte ausgelegt sind (die fallen mir aber grad nicht ein, da ich sie nicht nutze)
Delphi-Quellcode:
P := GetMem(Length(S) + 1);
MoveMemory(P, PChar(S), Length(S) + 1);

// und wenn man den Speicher/Text von P nicht mehr braucht,
// dann muß man den natürlich wieder freigeben
FreeMem(P);
Zitat:
Garnicht wahr, erst bei p := @s[3];
ich hoffe der Threadersteller und alle Anderen lesen hier die Ironi raus
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat