Bonjour,le programme suivant est écrit et exécuter par DEVC++.
Pas d’erreurs de compilation, le problème c’est que lors de
l’exécution de la 4eme itération de la boucle for, le programme
s’arrête.
J’ai mit devant chaque instruction a l’intérieur de « for » un «
printf »pour savoir il est ou le problème exactement et j’ai trouvé que
: si par exemple le nombre des éléments de mon tableau égale à 5 qui
est le même nombre d’itération de la boucle, le programme s’exécute
très bien dans les 3 premières itération , lors de la quatrième
itération il s’arrêt au niveau d’allocation d’espace mémoire de
l’élément « racine » de type arbre
Je vous en pris aidez moi pour savoir pourquoi j’ai ce problème.
Merci beaucoup pour votre réponse, mon code il marche.
mais j'ai pas compris pourquoi sa marche pas avec "*"
normalement l'allocation d'espace dynamique de n'importe quel type de donnée se fait comme sa:
var=(type)malloc(sizeof(type)); et dans mon cas mes éléments sont des pointeurs de type arbre. c'est à dire (arbre*)
Merci d'avance
Merci beaucoup pour ton aide [auteur/NICKYDAQUICK/43984.aspx nickydaquick], Mais j'ai maintenant un autre problème
j'ai une structure "arbre" qui est la suivante:
Et je veux mettre dans cet le champ code de la structure 0 s'il s'agit du fils gauche et 1 s'il s'agit d'un fils droit
pour faire ça j'ai créer une fonction préfixe qui est en bleu.
Mais lors de l'appel de la fonction par l'instruction prefixe(racine,0); le champ CODE de l'arbre n'est pas modifier(" il m'affiche des valeurs trop grandes je crois qu'ils sont des adresses")
Aidez moi de trouver ou il est le problème
je sais peux être que la solution est de transférer le l'élément "a" par adresse c'est à dire "arbre**a", Mais je sais pas ou il faut introduire des modifications dans le fonction
Merci d'avance.
c'est parce que dans ton code (au debut de la page) la racine n'a pas de fils; sinon ton code me semble bon. Si tu as toujours ce pb poste ton code au complet.