LongStrings von Delphi (AnsiString, UnicodeString usw.) und der WideString haben zwar eine Längenangabe, aber auch jeweil implizit ein #0#0 am Ende, für schnelle Casts zu PChar.
Endlich sagt es mal einer.
Also, noch mal im Klartext: Die Antwort auf die ursprüngliche Frage
Die frage wäre ist es überhaupt nötig den NULL terminierten Char anzuhängen?
lautet: Nein, ist nicht nötig.