IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

printf complété avec des 0


Sujet :

C

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 29
    Points : 30
    Points
    30
    Par défaut printf complété avec des 0
    Salut tout le monde

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    int toto=51;
    printf("%04d",toto);
    Ce code affichera 0051.
    Jusque là pas de problème.

    La question que je me pose est la suivante: est-il possible que le nombre de 0 soit variable ?

    Comme par exemple avec le code suivant où il faudrait changer la valeur de n pour changer le nombre de 0 (je sais que ce code ne marche pas, c'est juste pour illustrer mon idée)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    int toto=51;
    int n=4;
    printf("%0nd",toto);
    Merci d'avance.

  2. #2
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par Milowen
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    int toto=51;
    printf("%04d",toto);
    Ce code affichera 0051.
    <...> est-il possible que le nombre de 0 soit variable ?
    Oui, avec '*' :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    #include <stdio.h>
     
    int main (void)
    {
       int x = 51;
     
       printf ("%04d\n", x);
       printf ("%0*d\n", 4, x);
       printf ("%0*d\n", 8, x);
     
       return 0;
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    0051
    0051
    00000051
     
    Press ENTER to continue.
    C'est pas de la magie, c'est écrit dans la doc...

    http://man.developpez.com/
    Pas de Wi-Fi à la maison : CPL

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 29
    Points : 30
    Points
    30
    Par défaut
    Merci beaucoup, c'est exactement ce que je souhaitais.
    J'ai effectué plusieurs recherches sur google et dans les faq sans succès (je ne poste jamais bêtement sans recherches préalables )
    Je ne connaissais pas l'existence de ces pages de manuels.

    Merci beaucoup.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Vérifier si des champs sont complétés avec des chiffres
    Par AlexandraBr dans le forum Général JavaScript
    Réponses: 28
    Dernier message: 30/09/2014, 01h14
  2. Zone de texte nchar(20) complétée avec des blanks
    Par nefal dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 30/10/2009, 12h45
  3. Réponses: 4
    Dernier message: 30/06/2008, 16h18
  4. printf completer avec des espaces
    Par cerede2000 dans le forum C
    Réponses: 3
    Dernier message: 01/05/2008, 11h16
  5. [C] un petit heisenbug avec des printfs
    Par Mouquiette dans le forum Windows
    Réponses: 2
    Dernier message: 17/03/2008, 09h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo