Mettre des mots dans un tableau en C
Résolu
jutabary
Messages postés
15
Date d'inscription
Statut
Membre
Dernière intervention
-
jutabary Messages postés 15 Date d'inscription Statut Membre Dernière intervention -
jutabary Messages postés 15 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Tableau de mot en c
- Tableau word - Guide
- Trousseau mot de passe iphone - Guide
- Tableau ascii - Guide
- Mot de passe - Guide
- Mot de passe administrateur - Guide
2 réponses
Bonjour,
la variable "t" est un simple tableau, lorsque vous faites t[i] vous vous placez sur une case du tableau et cette case fait la taille d'un char, donc vous ne pouvez y mettre qu'une lettre pas plus.
Il vous faut par exemple un double tableau pour y mettre des mots :
char tableau[100][20];
là il y a de la place pour 100 mots qui ont ont au maximum une longueur de 20 char (en prenant en compte le caractère null de fin de chaîne)
Exemple sans aucune vérification de dépassement (il faudrait prendre en compte qu'il peut y avoir plus de 100 mots et qu'un mot puisse faire plus de 19 char) :
la variable "t" est un simple tableau, lorsque vous faites t[i] vous vous placez sur une case du tableau et cette case fait la taille d'un char, donc vous ne pouvez y mettre qu'une lettre pas plus.
Il vous faut par exemple un double tableau pour y mettre des mots :
char tableau[100][20];
là il y a de la place pour 100 mots qui ont ont au maximum une longueur de 20 char (en prenant en compte le caractère null de fin de chaîne)
Exemple sans aucune vérification de dépassement (il faudrait prendre en compte qu'il peut y avoir plus de 100 mots et qu'un mot puisse faire plus de 19 char) :
#include <stdio.h> int main(void) { int i,j,c; char tableau[100][20]; const char *buffer="test pour mettre des mots dans un tableau"; for(c=j=i=0;buffer[i];i++) { if(buffer[i]!=' '){ tableau[j][c]=buffer[i]; c++; } else{ tableau[j][c]='\0'; c=0; j++; } } for(i=0;i<=j;i++) printf("%s\n",tableau[i]); return 0; }