Registriert seit: 12. Jun 2002
3.483 Beiträge
Delphi 10.1 Berlin Professional
|
5. Jan 2003, 00:50
Ein AnsiString fürht 2 Längeninformationen mit sich. Zum einen in den 8 Bytes vor der Adresse, auf die die Variable zeigt, und zum anderen ist jeder String sowieso Nullterminiert. Wandelt man nun einen String per Typecast in einen PChar mit p := PChar(s) um, so wird geprüft, ob der String leer ist (also die Variable intern NIL ist). Wenn dies der Fall ist, wird aus dem NIL-String ein #0-String.
Zusammengefasst:
PChar('') ergibt #0
und
Pointer('') ergibt nil.
|