#include #include "pile.h" struct pile { int sommet; int pile[TAILLE_PILE]; }; static struct pile ma_pile; void pile_initialiser(void) { ma_pile.sommet = -1; } int pile_vide(void) { return ma_pile.sommet == -1; } int pile_pleine(void) { return ma_pile.sommet == TAILLE_PILE - 1; } void pile_empile(int valeur) { assert(! pile_pleine()); ma_pile.pile[++ma_pile.sommet] = valeur; } int pile_depile(void) { int valeur = pile_valeur(); ma_pile.sommet--; return valeur; } int pile_valeur(void) { assert(! pile_vide()); return ma_pile.pile[ma_pile.sommet]; } int pile_taille(void) { return ma_pile.sommet + 1; }