Auffüllen mit '0'en



  • Hi Leute

    mit dem beispiel hier

    fprintf(save, "%0*X\n",8, first);
    

    kann man ja mit Nullen auffüllen, auf maximal 8 Stellen.
    Ich bräuchte aber beispielsweise 16 Nullen/Stellen. ist das irgendwie möglich? wenn ich die 8 durch eine 16 ersetze, macht er nur blödsinn.

    Gruß



  • Das sollte problemlos funktionieren, wenn du die 8 durch eine 16 ersetzt. Welchen Compiler nutzt du denn? Alternativ kannst du auch

    fprintf(save, "%016X\n", first);
    

    verwenden, wenn die Feldbreite sowieso fest ist und direkt im Formatstring angegeben werden kann.



  • stimmt du hast recht. das geht mit 16 eigentlich auch. ich hatte n Fehler später im Programm, wo ich ne Zeile einlese, aber beschränke das auf 16 Zeichen.... das kann nicht reichen und deswegen kam auch Müll raus.
    Bis 9 Stellen ging es zufälliger Weise einwandfrei und ich dachte sobald ich 2 Ziffern schreibe (also "%016X....") funktioniert das nicht. Manchmal ist ja blöd.
    Also Vielen Dank

    Gruß


Anmelden zum Antworten