Tableau dynamique probleme
Bonjour ,
j'essaye de créer un tableau dynamique mais il ne fonctionne pas :s.
A chaque tour de boucle j'alloue un nouvelle espace memoire dans lequel je range un entier. Mais ensuite quand je veux lire le tableau ca m'affiche 2 valeurs et les reste c'est des 0 ...
Qu'est ce qui ne va pas?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
int* plus_court_chemin(int nbsommets, int compteur, Arc A[nbsommets], int potentiels[nbsommets], int id_arrivee, int id_depart, int tab2_chemin[compteur])
{
int id_affiche,i=0,taille_tab=0;
id_affiche=id_arrivee;
//tab_chemin[compteur-1]=id_affiche;
int * tab_chemin;
while(id_affiche!=id_depart)
{
tab_chemin = malloc (1 * sizeof(int));
if( tab_chemin == NULL )
{
fprintf(stderr,"Allocation impossible PROBLEME TECHNIQUE");
exit(EXIT_FAILURE);
}
//compteur++;
tab_chemin[i]=A[id_affiche].init;
printf("%d ",tab_chemin[i]);
id_affiche=A[id_affiche].init;
i++;
taille_tab++;
}
for(i=0;i<compteur;i++)
{
printf("test %d ",tab_chemin[i]);
}
//printf("\n");
return(tab_chemin);
} |