bonjours a tous
j'ai une chaine de caractere quelconque!
ex: mon exemple est bien explique
ce que j'aimerais faire c'est mettre dans un tableau cette chaine!
ex:tab[0]=mon
tab[1]=exemple
tab[2]=est
....
...
alors voila si quelqu'un a une idee
Version imprimable
bonjours a tous
j'ai une chaine de caractere quelconque!
ex: mon exemple est bien explique
ce que j'aimerais faire c'est mettre dans un tableau cette chaine!
ex:tab[0]=mon
tab[1]=exemple
tab[2]=est
....
...
alors voila si quelqu'un a une idee
Il te faut un tableau de chaînes dans ce cas soit par exemple:
N étant la taille du tableau, mais tu peux faire cela complètement en dynamique avec des allocations soit:Code:char * tab[N];
Il te faut ensuite allouer toi même ton tableau mais dans n'importe quel cas, il te faut allouer un espace pour chacune des chaînes ;)Code:char ** tab = NULL;
Pour découper ta chaîne tu peux très bien utiliser strtok.
strdup() est ton amie (POSIX.1, donc très portable).Citation:
Envoyé par Franck.H
Ouais c'est vrai... Emmanuel a encore frappé :mrgreen: Je l'oublie tout le temps, à force de faire les choses soi même on finis pas oublier les vraies fonctions :mouarf:Citation:
Envoyé par Emmanuel Delahaye
quelqu'un pourrait-il me donner plus d'explication!!
pour cree cette fonction!!
Bin y'a le man: strdup
Pour faire court, elle créer une copie de la chaîne passée en argument donc une nouvelle adresse allouée qu'il ne faudra donc pas oublié de libérer !
peut tu me donner un exemple car je ne voit pas clair
j'ai essayer cette fonction mais ce n'est pas du tout un split
est ce que c'est un element que j'ai besoin pour la fonction que je veux cree
ou la fonction elle meme
Je croyais que j'était assez clair en te donnant le but de la fonction strdup alors en donnant cette description tu vois bien qu'elle permet juste de faire des copies ce qui doit faire partie de ta fonction de split !
Faut lire ce qu'on t'écrit...Citation:
Envoyé par Franck.H
oui mais comment utiliser la fonction strtok alors que je ne sais meme pas combien il y a d'element dabns ma chaine a ecrire!!
la fonction que je veux cree est pour des chaine de longeur variables et d'element a extraire variables
strtok n'est pas adaptee
lit la doc, les tutoriels, et ce qu'on te dit...
strtok est parfaitement adaptée, et tu peux la coupler après avec strdup..
:evilred:
Si tu ne la connais pas comment peux-tu dire qu'elle n'est pas adaptée ? Elle l'est au contraire. Quelques recherches sur google ou même sur ce forum peuvent êtres très utiles, c'est un sujet qui a été traité je ne sais combien de fois.Citation:
Envoyé par acik59