ssana83
Messages postés5Date d'inscriptionlundi 22 mars 2010StatutMembreDernière intervention 8 mai 2010
-
8 mai 2010 à 00:22
TychoBrahe
Messages postés1309Date d'inscriptionsamedi 31 janvier 2009StatutMembreDernière intervention 5 juin 2013
-
8 mai 2010 à 11:27
bonsoir,
j'ai réalisé un programme en c où j'ai créé un tableau t_noeuds dont ses éléments sont des pointeurs sur les noeuds d'un arbre.
Lors de la déclaration, j'ai déclaré le tableau comme suit: NOEUD*t_noeuds[100]
j'ai alloué de la mémoire pour le tableau et je l'ai initialisé.
j'ai ensuite fait de sorte que le premier élément du tableau pointe sur le racine de l'arbre.
Ensuite j'ai fait un appel à la fonction creer_arbre(t_noeuds). Le problème c'est que le tableau t_noeuds est passé dans la fonction creer_arbre comme s'il contient un seul élément qui est le pointeur sur la racine or j'ai alloué de l'espace mémoire pour 100 éléments.
Prière de m'aider à résoudre ce problème.
Merci.
TychoBrahe
Messages postés1309Date d'inscriptionsamedi 31 janvier 2009StatutMembreDernière intervention 5 juin 201312 8 mai 2010 à 11:27
Salut,
'ai créé un tableau t_noeuds
En général on utiliser le préfixe t_ (ou suffixe _t) pour indiquer un nouveau type défini avec typedef, pas un nom de variable. Fais attention, ça risque de rendre ton code moins bien lisible par les autres (risque de confusions/hésitations).
NOEUD*t_noeuds[100]
j'ai alloué de la mémoire pour le tableau et je l'ai initialisé.
Si tu as précisé sa taille (ici 100) i ln'y a pas besoin de lui allouer de la mémoire vu que c'est déjà fait.
Le reste de tes explications est un peu confus, mais globalement je pense qu'une liste chaînée serait plus efficace qu'un tableau.