bonjour ,j ai un probleme avec les pointeurs surtout quand je passe le pointeur a un structure de file
merci de m avooir m expliqué cet exemple
c c est la structure de la pile (pas de probleme)
remplir ma pile
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 typedef struct _pile{ int donnee; struct pile *precedent; }Pile;
ici pour vider la pile
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 void pile_push(Pile **p_pile, int donnee)//pourqoi Pile **p_pile????:cry: { Pile *p_nouveau = malloc(sizeof *p_nouveau);//*p_nouveau???:cry: if (p_nouveau != NULL) { p_nouveau->donnee = donnee; p_nouveau->precedent = *p_pile;//ici la comilateur refus cette ligne *p_pile = p_nouveau; } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 int pile_pop(Pile **p_pile) { int ret = -1; if (p_pile != NULL) { Pile *temporaire = (*p_pile)->precedent; ret = (*p_pile)->donnee; free(*p_pile), *p_pile = NULL; *p_pile = temporaire; } return ret; }
merci de m avoir mexpliqué ???
Partager