1 /***********************************************************************
2 Implantation d'un type File d'entiers sous forme chaînée
4 La file est représentée par un doublet tête-queue de pointeurs
6 Le pointeur "tête" contient l'adresse de la tête de la file.
7 Le pointeur "queue" contient l'adresse de la queue de la file.
8 La file vide est représentée par le doublet NULL-NULL
10 Chaque cellule pointe vers la cellule suivante de la file
11 ou vers NULL si on est en queue de file.
12 ***********************************************************************/
18 typedef struct cellule
21 struct cellule
*suivant
;
27 } File
; /* tête queue */
39 /* ATTENTION: consulter la tête d'une File vide n'a pas de sens */
41 /* la File n'est pas modifiée */
44 File
enfiler(element e
,File f
)
49 /* ATTENTION: supprimer la tête d'une File vide n'a pas de sens */
53 element
defiler2(File
*f
) /* ATTENTION: la File est modifiée */
54 /* ATTENTION: supprimer la tête d'une File vide n'a pas de sens */
59 /********************************************************************/
64 for (i
=0; i
<20; i
++) p
=enfiler(i
,p
);
65 for (i
=0; i
<25; i
++) printf("%d\n",defiler2(&p
));}
66 /********************************************************************/