Bonjour a tous,
Je dois ecrire des fonctions de manipulation de listes chainées et j'ai un probleme pour la fonction d'extraction d'un element en fin de liste. La fonction doit retourner un pointeur sur le premier element de la liste.
Quand je teste ma fonction j'ai une "Erreur de segmentation".Je n'arrive pas a identifier le probleme.
voici ma fonction:
voici la structure:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 //pliste est un pointeur sur le 1er element de la liste chainée et *ppel est un pointeur destiné a recevoir l'adresse de l'element extrait. P_un_elem_liste extraire_elem_fin_liste(P_un_elem_liste pliste, P_un_elem_liste *ppel) { P_un_elem_liste pp; if (pliste == NULL){ *ppel = NULL; return *ppel; } while (pliste->suiv != NULL){ pp = pliste; pliste = pliste->suiv; } *ppel = pliste; return pp; }
Merci d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 typedef struct _un_elem_liste *P_un_elem_liste; typedef struct _un_elem_liste { Tval val; P_un_elem_liste suiv; } Un_elem_liste;
Partager