strtok avec plusieurs séparateurs
Bonjour,
je dois extraire des éléments d'une chaine de caractères mais les éléments peuvent etre séparés soit par un espace soit par une tabulation ou meme les deux. J'utilise la fonction strtok pour extraire mes éléments mais comment lui dire qu'il peut y avoir 2 sépateurs possible?
Code:
1 2 3 4
| char *ligne = NULL;
char *delim = {" ","\t"};
char *token;
token = strtok(ligne,delim); |
Ce code me provoque une erreur de segmentation.
Re: strtok avec plusieurs séparateurs
Citation:
Envoyé par lalaurie40
je dois extraire des éléments d'une chaine de caractères mais les éléments peuvent etre séparés soit par un espace soit par une tabulation ou meme les deux. J'utilise la fonction strtok pour extraire mes éléments mais comment lui dire qu'il peut y avoir 2 sépateurs possible?
Code:
1 2 3 4
| char *ligne = NULL;
char *delim = {" ","\t"};
char *token;
token = strtok(ligne,delim); |
Ce code me provoque une erreur de segmentation.
Normal, puisque ligne vaut NULL, la chaine à analyser n'est pas définie.
Pour indiquer plusieurs séparateurs, les mettre dans la chaine des délimiteurs :
Code:
char *delim = " \t";
tout simplement.
C'est pas ça qui est écrit dans ton mode d'emploi ?
Au hasard :
http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man3/strtok.3.html