sauvegarder une adresse et la récupérer plus tard
Bonjour,
je débute en c++, j'ai besoin d'aide concernant les pointeurs et les adresses.
En fait j'ai une variable de type structure que je veux sauvegarder son adresse mémoire et pouvoir récupérer cette adresse pour afficher le contenu de la variable plut tard.
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| tree_node* saveroot; // poiteur sur une variable de type tree_node (structure)
saveroot=(tree_node*)malloc(sizeof(tree_node)); // allocation mémoire de saveroot
saveroot= &root; // récupérer l'adresse de root qui est une variable de type tree_node
//recupérer les informations du root pointé par savroot
std::cout<<"adresse root: "<<saveroot<<"\n\n";
std::cout<<"contenu: \n Energy: "<<(*saveroot).energy<<"\n";
std::cout<<" * indice: "<<(*saveroot).indiceTreeCoef[(*saveroot).scale]<<"\n";
std::cout<<" * etat: "<<(*saveroot).hiddenState<<"\n";
std::cout<<" * echelle: "<<(*saveroot).scale<<"\n\n"; |
j'ai sauvegarder l'adresse de root dans saveroot. mon problème, c'est que root change dans la suite du code, donc l'adresse change. ce que je souhaite c'est de sauvegarder le tout premier root et le récupérer par la suite. j'ai pensé à sauvegarder l'adresse récupérée dans une variable et la récupérer après mais le problème c'est que je connais pas le type de variable que je dois utiliser ( l'adresse est de cette forme 0x7fff73049aa0), quel type dois je mettre ?