J'écris un programme C++ qui utilise les bibliothèques RRD qui nécessitent un tableau de 'const char *' pour leurs fonctions. Je pensais que je pouvais simplement déclarer le tableau, puis initialiser chaque élément du tableau, mais en changer un, tous les changements. De toute évidence, il me manque quelque chose. Voici un exemple similaire au code que j'écris (c'est-à-dire qu'il présente le même problème).Tableau de const char *
string intToString(long i)
{
stringstream ss;
string s;
ss << i;
s = ss.str();
return s;
}
int main(){
const char* av[5];
int i = 0;
int j = 0;
for(i=0;i<5;i++){
j= 0;
av[i] = intToString(i).c_str();
for(j=0;j<5;j++){ cout << j << " : " << av[j] << endl;}
}
}
Toute aide serait appréciée.
exécution de ce code se bloque VS2008, depuis av [5] ne sont pas initialisés, mais son utilisation dans le for (j = 0 ... boucle – quamrana
Side note:. En votre fonction 'intToString', faites juste: return' ss.str(); '. Il n'y a pas besoin de faire une copie, puis retournez la copie de chapeau – GManNickG