-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathlist.h
More file actions
65 lines (44 loc) · 1.36 KB
/
Copy pathlist.h
File metadata and controls
65 lines (44 loc) · 1.36 KB
1
2
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#ifndef LIST_H
#define LIST_H
#include <stdbool.h>
typedef int booleen;
typedef void Objet;
#define faux 0
#define vrai 1
#define NONORDONNE 0
#define CROISSANT 1
#define DECROISSANT 2
// un élément de la liste
typedef struct element {
Objet* reference;
struct element* suivant;
} Element;
// le type Liste
typedef struct {
Element* premier;
Element* dernier;
Element* courant;
int nbElt;
int type; // 0:simple, 1:croissant, 2:décroissant
char* (*afficher) (Objet*);
int (*comparer) (Objet*, Objet*);
} Liste;
void initListe (Liste* li, int type, char* (*afficher) (Objet*), int (*comparer) (Objet*, Objet*));
Liste* creerListe (int type, char* (*afficher) (Objet*), int (*comparer) (Objet*, Objet*) );
booleen listeVide (Liste* li);
int nbElement (Liste* li);
void insererEnTeteDeListe (Liste* li, Objet* objet);
void ouvrirListe(Liste* li);
booleen finListe(Liste* li);
Objet* objetCourant(Liste* li);
void listerListe (Liste* li);
Objet * chercherUnObjet(Liste* li, Objet* objetCherche);
Objet* extraireEnTeteDeListe (Liste* li);
booleen listeVide(Liste* li);
Objet* extraireEnFinDeListe (Liste* li);
booleen extraireUnObjet(Liste* li, Objet* objet);
void detruireListe(Liste* li);
void insererEnFinDeListe(Liste* li, Objet* objet);
char *afficher(Objet *objet);
int comparerInt(Objet* objet1, Objet *objet2);
#endif