PolyExoC MM
PolyExoC MM
PolyExoC MM
la nuit tombait
2
enfin, il arriva
.
.
.
19
pp = creer(); empiler(pp,1) si on avait la procedure empiler(pile p, int v);
pp
La p va prendre la valeur de l’argument d’appel
pp *p = e
Lorsque l’on sort de la procedure, p et v disparaissent
et pp pointe bien sur le bon element.
afficher_recursive(pp) pp 12
4
p = p->prec;
afficher_recursive(p)
5
printf ... 12
2eme niveau de recursivite : 12
v=4
p 4 p = p->prec;
5
afficher_recursive(p)
printf ... 4
3eme niveau de recursivite : 12 v=5
4 p = p->prec;
afficher_recursive(p) sortie
p 5
p = NULL
printf ... 5
NULL
pp q = NULL
19
Passage 1 dans la boucle while(p)
4 q q
p 19 p 19 p 19 19
8 p
4 r 4 r 4 r 4 r
8 8 8 8
19 q 19 q 19 19
p 4 p 4 p 4 q 4 q
8 r 8 r 8 r p 8 r
19 19 19 19
4 q 4 q 4 4
p 8 p 8 p 8 q 8 q
19 19 19 19
4 r 4 r 4 r q 4 r
affichage : 8
8 q 8 q p 8 q p 8
p = NULL p = NULL
19 r 19 r 19 r q 19 r
affichage : 4
q 4 q 4 q 4 p 4 p
p 8 p 8 8 8
q 19 q 19 q 19 p 19 p
affichage : 19
4 p 4 p 4 4
8 8 8 8