Bonjour je veux faire un code qui me permet de rechercher les mots d'une chaines et stocke le mot dans une table pour cela j'ai fait comme ceci :
le problème de mon code est visible lors de l'affichage je n'ai presque que des (null) et et le reste n'est pas fameux =>
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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54 #include <stdio.h> #include <string.h> #define MAXTAB 50 typedef char* String; //tableau de type String String tab_char[MAXTAB]; //tableau contenant des String enfin c'est ce que j'espere int is_space(char machaine[], int pos) //test si le caractère courant est un espace { if (machaine[pos]==' ') return 0; else return -1; } void ma0(char *t) //vide la chaine { int i; for(i=0;i<=MAXTAB+2;i++) t[i]=' '; } int main() { char *message="Salut comment ca va ?"; int i=0,j=0, k=0; char ch[50]=""; //stocke le mot while (i<strlen(message)) { if (is_space(message, i)!=0) //si ce n'est pas un espace { ch[j]=message[i]; //je copie le caractère j++; //et j'incrémente } else //je trouve un espace { tab_char[k]=ch; //je stocke le mot dans la table k++; //passe au suivant ma0(ch); //vide la chaine j=0; //ré initialisation du compteur de ch } i++; //passe au caractère suivant dans message } for(i=0;i<MAXTAB;i++) //et affiche { printf("%s\n",tab_char[i]); } return 0; }
Voila est ce que vous pouvez m'aider a résoudre mon problème (voire m'indiquer s'il existe une fonction qui stocke les mots dans un tableau même si je doute qu'une telle fonction existe)
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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 Process started >>> ? (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) ? (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) (null) <<< Process finished.
Partager