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 :

Tableau de chaine de caractères


Sujet :

C

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2012
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2012
    Messages : 42
    Points : 40
    Points
    40
    Par défaut Tableau de chaine de caractères
    Rebonjour à tout le monde !

    Je reviens vers vous pour un autre problème... Je voudrais créer un tableau de chaines de caractères, le mémoriser et l'utiliser...
    Ex :
    char JOUR[7][9]= {"lundi", "mardi", "mercredi", "jeudi", "vendredi", "samedi", "dimanche"};
    Je voudrais créer une fonction qui donne à l'utilisateur la possibilité de créer un tableau de chaines de caractères en effectuant lui même la saisie sur le clavier et l'afficher plus tard... Donc j'ai cette fonction qui semble incorrecte, qu'est ce qui manque s'il vous plait...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    void creeannonce(char annonce[][20], int taille){
        int i;
        for(i=0;i<taille;i++){
            printf("annonce [%d] : ",i);
            scanf("%s",annonce[i][20]);
        }
    }
     
    void afficheannonce(char annonce[][20], int taille){
        int i;
         for(i=0;i<taille;i++){
            printf("%s",annonce[i][20]);
        }
    }
     
    int main (int argc, char *argv[]){
     
        char ann[20][20];
        creeannonce(ann,7);
        creeannonce(ann,7);
     
        return 0;
    }

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Je dirais plutôt ce qu'il y a en trop Et c'est le [20] à la fin de annonce[i][20].
    En effet, ce faisant, tu tentes d'accéder au 21ème caractère du tableau annonce[i].
    • De 1) tu dépasses la taille de ton tableau que tu as fixé à 20 : char annonce[][20]
    • De 2) tu ne traites pas un tableau de caractères, mais un seul caractère.

    Deux lignes à corriger donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    scanf("%s",annonce[i][20]);
    printf("%s",annonce[i][20]);
    Note : on préfèrera l'usage de fgets à scanf (à lire)

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juin 2012
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2012
    Messages : 42
    Points : 40
    Points
    40
    Par défaut
    Merci Winjerone

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

Discussions similaires

  1. Réponses: 10
    Dernier message: 31/05/2007, 15h10
  2. tableau de chaine de caractères
    Par psgman113 dans le forum C
    Réponses: 15
    Dernier message: 22/01/2007, 18h52
  3. Pointeur, tableau et chaines de caractères.
    Par rouliane dans le forum C++
    Réponses: 8
    Dernier message: 19/12/2006, 20h27
  4. Réponses: 15
    Dernier message: 04/11/2006, 10h02
  5. [C] tableau de chaines de caractères
    Par kitsune dans le forum C
    Réponses: 18
    Dernier message: 01/04/2006, 18h18

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