Konvertierungen von String in PChar
Nach oben zu Mit Strings arbeiten
Konvertierungen langer Strings (AnsiString und UnicodeString) in PChar werden nicht automatisch durchgeführt. Auf Grund bestimmter Unterschiede zwischen Strings und PChar können bei Konvertierungen Probleme auftreten:
- Lange Strings werden mit Referenzzählern verwaltet,
PChars
nicht. - Bei der Zuweisung an einen String werden die Daten kopiert, während ein
PChar
ein Zeiger auf eine Speicheradresse ist. - Lange Strings sind nullterminiert und enthalten zusätzlich eine Längenangabe sowie andere Informationen,
PChars
sind einfach nullterminiert.
Diese folgenden Themen beschreiben Situationen, in denen diese Unterschiede zu schwer korrigierbaren Fehlern führen können: