Affichage Hexa 0x000000001 et pas 0x1

laurent57150 Messages postés 14 Date d'inscription jeudi 25 mai 2006 Statut Membre Dernière intervention 30 avril 2007 - 8 juin 2006 à 11:41
makker73 Messages postés 2 Date d'inscription mardi 24 février 2009 Statut Membre Dernière intervention 27 mars 2010 - 27 mars 2010 à 14:06
salut,

j'aurais aimé savoir si il existait une option dans cout pour afficher les zeros 'inutile' lors de l'affichage d'un nombre en hexa.

Par inutile, j'entend les zeros placé avant le premier 1.

Je voudrais afficher 00000001 quand j'affiche 1 et non juste 1.

J'utilise cout << hex << .... pour l'instant.

J espere que vous voyez ce que je veux faire
Laurent

5 réponses

ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
8 juin 2006 à 12:11
avec printf :
printf("%08X", val);

avec cout : je sais pas
0
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
8 juin 2006 à 12:11
cout.width(8); // nombre minimal de chiffres en tout
cout.fill('0'); // préfixe de remplissage
cout << 23 << endl;
0
nightlord666 Messages postés 746 Date d'inscription vendredi 17 juin 2005 Statut Membre Dernière intervention 23 mai 2007 10
8 juin 2006 à 14:18
ou alors avec #include

cout << std::setw(8) << 23 << std::endl;
0
Taron31 Messages postés 199 Date d'inscription vendredi 16 avril 2004 Statut Membre Dernière intervention 28 février 2008
8 juin 2006 à 18:29
Nan ça modifie juste le gabarit, il manque le caractère de remplissage : setfill() ou stream.fill()...

cout << "0x" << setw(8) << setfill('0') << hex << 23 << endl;

___________________
MVS - Most Valuable Student ( Microsoft)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
makker73 Messages postés 2 Date d'inscription mardi 24 février 2009 Statut Membre Dernière intervention 27 mars 2010
27 mars 2010 à 14:06
mmmm
le meme probleme.
merci
sa marche a 100%
cout << setw(nombre total de numero) << setfill('ne pas ignorer ce numero') << hex << variable.
exemple :
afficher 01 au lieu de 1
int var = 0x01
cout << setw(2) << setfill('0') << hex << var;
ayyy n oublie pas d inclure le header
"iomanip.h"
0
Rejoignez-nous