Bonjour,
j'ai une erreur de segmentation que je n'arrive pas à résoudre !!
Voici les structures que j'utilise :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
struct neighbor {
int id;
float ph;
struct neighbor * next;
};
typedef struct neighbor T_neighbor;
//========================================================
struct entree {
int destination_id;
T_neighbor * neighbor;
struct entree * next;
};
typedef struct entree T_entree;
//========data
struct data {
//
T_entree * table;
};typedef struct data T_data; |
l'erreur se produit dans ce code :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
T_entree * find_destination(T_entree * c, int p_destination )
{
T_entree * courant;
courant= NULL;
int trouve=0;
if (c !=NULL )
{
courant=c ;
while ((courant !=NULL) && (trouve==0) )
{
if (courant->destination_id == p_destination)
trouve=1;
courant=courant->next;
}
}
return courant;
} |
plus précisément dans cette ligne
if (courant->destination_id == p_destination)
j'arrive pas à accéder à courant->destination_id ou courant->next , et aussi à c->destination_id et c-> next !!
avez-vous une idée sur la cause de cette erreur ?
Merci d'avance pour votre attention
Partager