Découpe une chaine de caractère suivant un séparateur donné

Résolu
cs_ousin Messages postés 9 Date d'inscription vendredi 11 mars 2005 Statut Membre Dernière intervention 9 février 2008 - 14 avril 2007 à 19:19
SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 - 14 avril 2007 à 22:44
Bonjour,


exite-t-il en langage une fonction permetant de decouper une chaine de
caractère suivant un séparateur donné(";" par exemple) et range les
portions dans un tableau de chaine de caractères. Merci

2 réponses

DeAtHCrAsH Messages postés 2670 Date d'inscription vendredi 25 janvier 2002 Statut Membre Dernière intervention 6 février 2013
14 avril 2007 à 19:29
Si tu utilises les strings il existe la méthode split.
Sinon tu peux utiliser les tokens (cf strtok).

Le mieux reste malgré tout de te faire ta propre fonction.

Shell
3
SAKingdom Messages postés 3212 Date d'inscription lundi 7 novembre 2005 Statut Membre Dernière intervention 16 février 2009 15
14 avril 2007 à 22:44
char buffer[] = "1234;5678;9012", *c = buffer;
char tab[3][5];
int j = 0;

do
{
    int k = 0;    while(*c !';' && *c) tab[j][k++] *c++;
    tab[j++][k] = 0;
} while(*c++);

tab[0] contiendra 1234, tab[1] 5678 et tab[2] 9012

C++ (@++)<!--
0