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 :

Option Printf ?


Sujet :

C

  1. #1
    Membre confirmé
    Homme Profil pro
    Responsable ingénierie des logiciels - Recherche alternance
    Inscrit en
    Novembre 2013
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Responsable ingénierie des logiciels - Recherche alternance
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 68
    Par défaut Option Printf ?
    Bonjour ,
    Je fais en ce moment un petit programme, et il se trouve que dans celui-ci je demande à un moment donné un printf(); sur un symbole ASCII. Mais le problème c'est que j'aimerais le répété, bien entendu je pourrais faire une itération seulement il se trouve que ce printf est situé dans plusieurs itérations, et donc par question d'ergonomie et lisibilité du code, j'aimerais savoir s'il y avait une option de printf qui permet de saisir tant de fois tel caractère.

    Pour bien comprendre la situation je joint un morceau de programme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    for (i=0; i<7 ; i++){
    
            printf(" \n\n %c \n", 205);
                for (y=0; y<6; y++){
                    printf(" %d ", tableau1[i][y]);
                    printf(" %c ", 206);
                }
        }
    Vous pouvez voir que le premier printf affiche le caractère ASCII 205. Étant donné qu'il est présent dans plusieurs boucle for, n'y a t-il pas un moyen d'afficher plusieurs fois ce caractère sans rajouter une boucle ?

    Merci d'avance .

  2. #2
    Membre Expert
    Avatar de transgohan
    Homme Profil pro
    Développeur Temps réel Embarqué
    Inscrit en
    Janvier 2011
    Messages
    3 149
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Temps réel Embarqué

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 149
    Par défaut
    Avec l'option %s tu peux afficher une chaîne de caractères.
    Tu peux donc faire une chaîne avec tes x caractères ASCII.

  3. #3
    Membre confirmé
    Homme Profil pro
    Responsable ingénierie des logiciels - Recherche alternance
    Inscrit en
    Novembre 2013
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Responsable ingénierie des logiciels - Recherche alternance
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 68
    Par défaut
    D'accord je sais comment faire pour l'afficher plusieurs fois, seulement le problème est que ce ça ne sera pas très ergonomique et très relisible. Donc je souhaite juste savoir si une quelconque option de la fonction printf(); pourrait résoudre ce problème.
    Sachant que je vais utiliser relativement souvent ce genre de procédé dans la boucle FOR présenté ci-dessus, j'aimerais éviter autant que possible de réaliser des boucles ou chaines dans la mesure du possible(en tout cas pour une utilisation comme celle-ci).

    Si vous ne comprenez pas, pour illustrer je souhaiterais que mon printf puisse faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    printf(" \n\n %c%c%c%c%c%c%c%c%c%c", 205, 205, 205, 203, 205, 205, 205, 205, 205, 203);
    Mais sans avoir à réécrire tous ces "%c" ou même "205, 203, ... ".

    Même si cette syntaxe est fausse, je me disais que quelque chose comme ceci pourrait fonctionné :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    printf(" \n\n %c(*6)%c(*15)", 205, 203);

  4. #4
    Membre très actif

    Femme Profil pro
    Collégien
    Inscrit en
    Juillet 2010
    Messages
    591
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Afghanistan

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Juillet 2010
    Messages : 591
    Par défaut
    Bonjour,

    n'y a t-il pas un moyen d'afficher plusieurs fois ce caractère sans rajouter une boucle ?
    Je ne crois pas que ce soit possible.

    transgohan a donné la solution:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    char str[] = {205, 205, 205, 203, 205, 205, 205, 205, 205, 203,'\0'};
    printf("\n\n %s",str);

  5. #5
    Membre éprouvé
    Homme Profil pro
    Collégien
    Inscrit en
    Septembre 2014
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 22
    Localisation : Nouvelle-Zélande

    Informations professionnelles :
    Activité : Collégien

    Informations forums :
    Inscription : Septembre 2014
    Messages : 65
    Par défaut
    Si tes autres boucles sont destinées à avoir d'avantage d'itération que le nombre de char que tu souhaites afficher, tu peux simplement déclarer un compteur spécifique au nombre d'affichage de tes char, et faire une simple vérification, si inférieur tu affiches.
    Du coup tu fais l'économie d'une boucle inutile, si c'est bien à ça que tu voulais en venir.

  6. #6
    Membre confirmé
    Homme Profil pro
    Responsable ingénierie des logiciels - Recherche alternance
    Inscrit en
    Novembre 2013
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Responsable ingénierie des logiciels - Recherche alternance
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 68
    Par défaut
    Merci bien. Problème résolu grâce à vos aides .

  7. #7
    Membre Expert
    Avatar de transgohan
    Homme Profil pro
    Développeur Temps réel Embarqué
    Inscrit en
    Janvier 2011
    Messages
    3 149
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Temps réel Embarqué

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 149
    Par défaut
    Sinon si le problème est juste une question de lisibilité tu peux faire une MACRO qui cachera une boucle ainsi qu'un printf.

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

Discussions similaires

  1. Option printf ()
    Par N.OTHMANE dans le forum C
    Réponses: 13
    Dernier message: 29/11/2007, 10h54
  2. [propriétés]Option Checked
    Par psl dans le forum Composants VCL
    Réponses: 6
    Dernier message: 22/08/2002, 08h07
  3. Parametrage des options de projet
    Par ares7 dans le forum EDI
    Réponses: 7
    Dernier message: 22/07/2002, 15h33
  4. fonction printf
    Par ydeleage dans le forum C
    Réponses: 7
    Dernier message: 30/05/2002, 11h24
  5. Vous gerez comment les options d'un programme?
    Par n0n0 dans le forum C++Builder
    Réponses: 5
    Dernier message: 17/05/2002, 13h21

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