[C] Lez '0' ne s'affichent pas

Résolu
ilan27 Messages postés 394 Date d'inscription   Statut Membre Dernière intervention   -  
ilan27 Messages postés 394 Date d'inscription   Statut Membre Dernière intervention   -
Bonsoir,
Lorsque j'écris dans un fichier un nombre en héxadécimal (avec la fonction fprintf), les zéros qui précèdent le nombre ne s'affichent pas, ils sont ignorés. Or moi je veux qu'ils apparaissent. On m'a dit de faire préceder le x de '0' ainsi: %0x, mais ils ne s'affichent toujours pas.
Voici comment je voudrais afficher/ecrire un code précédé de plusieurs zéros qui ne s'affichent pas:
fprintf(cpy, "%0x\n", code);

EX: au lieu d'avoir 006548a5 j'ai 6548a5...

Merci de me dire comment faire!

2 réponses

fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Salut,
Ton drapeau était correct, mais il manque encore un chiffre :
fprintf(cpy, "%05x\n", code); //affichera des 0 devant "code" de sorte à avoir 5 caractères.

Cordialement
0
ilan27 Messages postés 394 Date d'inscription   Statut Membre Dernière intervention   36
 
C'est très clair, et ça marche impeccable!
T'es un as, merci :)
0