Bonjour,
je suis en train de développer une application avec GCC en C++ et je rencontre un problème qui m'étonne. J'ai eu beau débugger avec eclipse pour vérifier les emplacement mémoire de mes pointeurs et vérifier qu'il n'y a pas d'effet de bord et je ne constate rien d'anormal...
Voici donc mon problème :
Je récupère après appel d'une fonction d'une librairie tierce un "const unsigned char *" et je m'en sers à diverses reprises dans différentes fonctions. En premier lieu je stocke ce pointeur dans un attribut d'une instance (l'attribut étant lui aussi un pointeur), puis je passe mon instance dans une fonction, cette fonction prend l'instance et récupère le "const u_char *" et affiche son contenu grâce à une simple boucle printf.
Lorsque j'affiche le contenu du "const u_char *" avant de le mettre dans l'instance il est correct, ensuite si j'affiche le contenu de ce même "const u_char *" dans ma dernière fonction, le contenu a changé (pas tout le temps).
Pourtant il s'agit bien d'un const, et j'ai vérifié que les adresses soient bien identiques et elles semblent l'être.
Avez-vous une explication quant au changement du contenu de mon "const u_char *" ? Je suis désemparé...
Merci de votre aide
Partager