Aller au contenu

Sujets conseillés

Posté (modifié)

Bonjour,

J'aimerais savoir comment prendre en compte les zéros qui sont devant un entier (int).

Par exemple: Au lieu de i=45, j'aimerais que i=0045.

Merci d'avance pour votre aide.

kattig

PS: Je ne sais pas si c'est le bon forum pour le c++. Si ce n'est pas le cas, veuillez m'en excuser, ce serait gentil à vous de me dire dans quel rubrique aller.

Modifié par kattig
Posté

tu peux utiliser la fonction sprintf qui travaille sur une chaine :

sprintf(chaine, "%4d", i);

Ecrira dans 'chaine' le nombre 'i' avec 4 chiffres et des 0 devant si besoin.

La syntaxe est similaire celle de printf : http://membres.lycos.fr/dancel/c/c60_10.htm

Steph

Posté (modifié)

Bonjour Steph,

J'utiliserai finallement le string puisque le i (int) n'est pas modifié.

Alors que ce que je voudrais, c'est que i soit égale à par exemple 00045.

Merci en tout cas d'avoir bien voulu m'aider.

kattig

Modifié par kattig
Posté

Les int ne servent qu'a faire du calcul, ce n'est pas possible et ça ne sert à rien d'ajouter des 0 devant sauf si tu a besoin de les afficher et dans ce cas tu dois les convertir en chaine.

Mais peut-être que je me trompe sur ton besoin et que je n'ai pas bien compris pourquoi tu doit formater ton nombre ainsi. Si tu veux préciser, je pourrai voir si je connais une solution.

Steph

Posté

Pour répondre à ta question, je suis entrain de faire des conversions (binaire et autre) et, pour cela me faudra stocker le résultat.

En binaire, on y trouve des 0 devant que j'aimerais prendre en compte.

Par rapport à la manière que j'avais programmé, cela ne prend en compte que des entiers.

D'où la raison pour laquelle je me demandais si l'on pouvait affecter à un entier des zéros devant.

La meilleure et unique solution (si j'ai bien compris) est de ne pas utiliser d'entiers.

En tout cas, merci une nouvelle fois pour ton aide.

Bonne journée.

kattig

Posté

La meilleur solution pour moi serait de stoquer les nombre en temps qu'entier, mais vraiment d'entier et non de representation de binaire.

En claire et en decode, de stoquer 1110 en temps que i=14; et d'utiliser des fonctions de conversions pour la saisie et l'affichage.

Ainsi, tous les operateurs binaires continueront a fonctionner.

En fait, le plus propre serait meme de le faire dans une class histoire qu'un objet binaire reste toujours un objet binaire ... peut etre d'ailleurs que ca existe dans les classes standard du C++, je n'ai pas verifie.

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...