| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 
 |  
void Enqueue(Queue **f, char *value)
{
	Queue *element = malloc(sizeof(Queue));
	if(!element) exit(1);
	element->val = malloc(sizeof(value)+1);
	strcpy(element->val,value);
	element->next = *f;
	(*f) = element;
}
char *Dequeue(Queue **f)
{
	Queue *save_Queue = *f; //Sauvegarde la Queue
	printf("Dequeue :\n");
	char* Value;
	//Queue *tmp;
	if(!*f) return NULL;    //Retourne NULL si la Queue est vide
	while((*f)->next) //Va à l'avant dernier de la Queue
	{
		printf("Value :%s\n",(*f)->val);
		(*f) = (*f)->next;
	}
	Value = malloc(sizeof((*f)->next->val));
	strcpy(Value,(*f)->next->val);
	printf(Value);
	free((*f)->next);
	(*f)->next = NULL; //clo la Queue
	(*f) = save_Queue;
	return Value;
}
void Clear(Queue **f)
{
        Queue *tmp;
        while(*f)
          {
             tmp = (*f)->next;
             free(*f);
             *f = tmp;
          }
}
void View(Queue *f)
{
        while(f)
          {
             printf("Voici : %s\n",f->val);
             f = f->next;
          }
} | 
Partager