Skip to content
Extraits de code Groupes Projets
Valider 5ba35ccb rédigé par Louis Malevez's avatar Louis Malevez
Parcourir les fichiers

Fonctions pour la gestion de la liste

parent ac753b6b
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
Pipeline #4638 réussi
#ifndef PROJET_Q4_GROUPE_O4_PRIMEF_H
#define PROJET_Q4_GROUPE_O4_PRIMEF_H
//
// Created by Louis Malevez on 22-04-20.
//
#include <stdio.h>
#include <stdlib.h>
/* Structure représentant un élément de la liste. */
typedef struct elem
{int value;
struct elem *prev;
struct elem *next;
} elem ;
/* Structure d'accès à la liste. */
typedef struct dblist
{elem *first;
elem *last;
}dblist;
void Init(struct dblist *l) {// fonction qui initialise une liste
l->first = NULL;
l->last = NULL;
}
void Clear(struct dblist *l)//fonction qui efface la liste
{
elem *tmp;
elem *pelem = l->first;
while(pelem)
{
tmp = pelem;
pelem = pelem->next;
free(tmp);
}
l->first = NULL;
l->last = NULL;
}
void PushBack(struct dblist *l, int val)// fonction qui ajoute un élément a la fin de la liste
{
elem *nouv = malloc(sizeof(elem));
if(!nouv) exit(EXIT_FAILURE);
nouv->value = val;
nouv->prev = l->last;
nouv->next = NULL;
if(l->last) l->last->next = nouv;
else l->first = nouv;
l->last = nouv;
}
void View(struct dblist l)//permet de parcourir la liste depuis le début, on s'en sert pas enft
{
elem *pelem = l.first;
while(pelem)
{
printf("%d\n",pelem->value);
pelem = pelem->next;
}
}
void wfile(struct dblist l,FILE*file)//fonction qui lit et écrit ds un fichier les élément de la liste
{
elem *pelem = l.first;
while(pelem)
{
fprintf(file,"%d ",pelem->value);
pelem = pelem->next;
}
}
#endif //PROJET_Q4_GROUPE_O4_PRIMEF_H
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter