Salut à tous,

Je rencontre un problème qui m'intrigue.

J'ai une méthode qui renvoie qui produit un tableau de char et le retourne. elle est donc déclarée ainsi :

Je déclare un "char *" pour récupérer le contenu du tableau et l'utiliser. Seulement voilà au sortir de la méthode, tout est bon, le débugger indique bien les bonnes valeurs dans le tableau (une suite de chiffre). Deux lignes plus tard, alors que rien ne touche à ce "char *", le debugger indique que la valeur a changé et à la place j'ai des trucs bizarres. Je ne comprends pas d'où celà vient.

Visiblement, ce changement à une incidence puisque si je déclare en dur, la valeur du "premier" retour, le reste fonctionne normalement. Mais avec la nouvelle valeur, rien ne fonctionne.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
char * outText ={'\0'};
	outText= maMethode();
 
	int i = 0; //ici la valeur de outText est correcte, composée de chiffre
 
        int comp = a+3; //ici la valeur de outText est devenue ÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌÌHî
 
	while(outText[i]!='\0')
	{
               // faire des trucs
	}
Si quelqu'un peut m'expliquer ce qui se passe...

Merci