\0 mit fprintf oder puts ausgeben ?



  • Hallo zusammen,

    ich glaub ich hab grade ein Brett .....

    Ich möchte gerne in eine Binärdatei den HEX Wert 00 schreiben jedoch terminiert mir \0 natürlich meinen String was ich in diesem Falle ja nicht brauchen kann 😞

    Gibt es eine einfache Lösung ? 😕

    Gruß und Dank



  • \0 ist nur dann das Stringende, wenn es im Zusammenhang mit Strings verwendet wird. Z.B. als Parameter bei printf ( fprintf(myfile,"Hier kommt die Null: %c",0); ) oder fputc ( fputc(0,myfile); ) kannst du es ganz normal mitgeben.

    (und afaik gilt die '\0' in Textdateien auch als normales Zeichen)



  • Aua .. Ich voll Depp ...

    das habe ich natürlich überhaupt nicht versucht 🙄
    und natürlich funktioniert es so.
    Ich habe das \0 direkt in den String geschrieben bzw. in ein Array kopiert was natürlich nicht funktioniert. Naja war spät gestern Abend 🙂

    Aber Danke, Danke, Danke ...



  • Nachtrag: Du könntest ein Array auch per fwrite() ausgeben, da gibst du die tatsächlich benötigte Länge an und kannst '\0' als ganz normales Zeichen betrachten.


Anmelden zum Antworten