Convertir un string en char**
Bonjour,
j'ai un string p qui contient des mots séparés par des espaces. Je voudrais créer un tableau de pointeurs char** qui contienne les mots de mon string. J'ai essayé le bout de code suivant qui ne fonctionne pas :cry::
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| Proj::Proj(string p)
{
istringstream stream1;
stream1.str(p);
string arg;
int nb_arg=0;
while (stream1 >> arg )
{
tab_arg[nb_arg]=(const_cast<char*>(arg.c_str()));
nb_arg++;
}
} |
D'autre part, nb_arg et tab_arg sont des attributs de ma classe Proj,et je suis obligé, à la fin du constructeur de mettre Proj::nb_arg=nb_arg ; sinon, nb_arg contient n'importe quoi (un entier monstrueux) quelqu'un sait pourquoi ?
Merci d'avance
Tonio