P I L E / F I L E
Principes de base ( succinct )
Il existe principalement 2 types d'implémentation de pile ( LIFO et FIFO ). LIFO : Last In First Out ( Dernier entré , Premier Sortie ) => Pile. FIFO : First In First Out ( Premier entré , Premier Sortie ) => File.
LIFO:
Une pile est une liste ordonnée dans laquelle les insertions 
    et les suppressions sont faites à un bout appelé le haut de 
    la pile (TOP).Comme le dernier élément inséré 
    dans la pile est le premier élément à être enlevé, 
    une pile est ausi connue sous le non de liste LIFO.
    Pour travailler avec une pile il nous faut un certain nombre de primitives 
    comme:

FIFO:
Une pile est une liste ordonnée dans laquelle les insertions se fond à un bout et toutes les suppressions se font à l'autre bout. Comme le premier élément inséré dans la file est le premier à en être enlevé, les files sont aussi connues sous le nom de listes FIFO.Pour travailler avec une file il nous faut aussi un certain nombre de primitives comme:

Primitives
    
Il n'y a pas besoin d'écrire du code pour pouvoir définir une pile et/ou une file. Il faut simplement redéfinir à l'aide de #define xxxx yyyy certaines fonctions des listes.
Ex: Pour définir une pile : pile.h
#define PILE LLIST
#define initpile(p,a) initlist(p,a,a) #define close_pile(p) close_list(p) #define pileborn(p) listborn(p) #define pilevide(p) lvide(p)
#define empiler(p,e)  adjq(p,e)
#define depiler(p)    corpi(p)
#define sommet(p,e)   queue(p,e)
    
#define hauteur(p)    lgrl(p)
  
Il n'y a pas de fichier file.h pour l'instant , en principe n'importe quel programmeur C devrait (d'après le même modèle que pile.h) pouvoir en faire un en quelques minutes.
Comme pour les listes, il faut impérativement initialiser une pile avec la fonction : initpile et la détruire par close_pile en fin de programme !!.