Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
3. Apr 2007
@3_of_8: das mit dem abschließendem #0 in String hab ich nie bezweifelt ... nutze es ja selber für 'ne schnelle String-PChar-Konvertierung, ohne PChar(S) aus.
Aber warum es mit ShowMessage nicht geht ist recht einfach erklärt ... dieses übergibt ja intern zum Darstellen den String an eine WinPAI-Funktion auf, welche ja die Strings als PChar entgegen nimmt. :zwinker:
@xZise:...
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
2. Apr 2007
nein, ist er nicht.
S := '123'#0'456';
If S = '' Then ; << mach hier mal einen Breakpoint und schau was in S drin ist ;)
DelphiStrings haben eine Längenangabe und da nur diese ausgewertet wird, is eine #0 im String völlig irrelevant.
Bei Umwandlungen in PChar, wird die Längenangabe nicht beachtet, aber dafür dann die #0.