bonsoir à tous,
je me suis créer une petite fonction split pour éclater une chaine et mettre chaque element dans un tableau:
cette dernière me retourne le tableau, mon probleme se situe au moment de recuperer sa valeur:
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 char **split(char *buf, char delim) { unsigned int idx = 0; char *list[MAXPARA]; while (*buf) { while (*buf == delim) *buf++ = 0; /* dans le cas ou l'argument commence par un ':' on le supprime */ if (*buf == ':') { list[idx++] = buf + 1; break; } /* on recupere l'argument */ list[idx++] = buf; while (*buf && *buf != ' ') ++buf; } list[idx] = NULL; return list; }
j'ai l'erreur 'error: incompatible types in assignment'
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 // buffer contient une chaine de caracteres char *tab[MAXPARA]; tab = split (buffer, ' ');
j'ai encore un peu de mal avec les pointeurs j'imagine que la valeur de retour du split n'est pas compatible avec ma declaration du tableau mais je n'en suis pas sur et je ne sais comment faire autrement
Partager