Bonjour à tous!!!
J'ai un char qui contient 9 mots:
char command[20]; // ss 1 envoyer un message pour la pos 1
Ensuite, je souhaite decortiquer ces mots en les plaçant dans des varaiable
char *cha, *pos, *message;
cha = strtok(command," ");
int k=0;
do{
switch(k)
{
case 0:
pos = atoi(strtok(NULL," "));
break;
case 1:
message = strtok(NULL," ");
break;
default:
strcat(message, " ");
strcat(message, strtok(NULL," "));
}
k++;
}while(cha != NULL)
;
Je voudrais donc que
cha contient ss (pour send sms)
pos contient 1 (pour le numero de portable enregistré à la position1)
message contient "envoyer un message pour la pos 1"
Le problème est que vu qu'après "envoyer" il y a encore des espaces, il va continuer à spliter mes mots alors que ce qui suit après "envoyer", doit etre sauver dans 'message'.
Comment peut-on "stopper" strtok() avant le break de case 0?
Pour le moment, j'ai strcat dans 'default', mais je ne suis pas convaincu que c'est la meilleur solution...
Merci