TP_9 exo2: preliminary work on linked list helpers.
[TD_C.git] / TP_9 / exo2 / clist.h
diff --git a/TP_9/exo2/clist.h b/TP_9/exo2/clist.h
new file mode 100644 (file)
index 0000000..ec1c13a
--- /dev/null
@@ -0,0 +1,18 @@
+#ifndef CLIST_H
+#define CLIST_H
+
+/** Linked list of int */
+typedef struct link_s {
+    int value;
+    struct link_s* next;
+} link_t;
+
+link_t* list_new(int value); 
+link_t* list_append(link_t* head, int value); 
+link_t* list_prepend(link_t* head, int value); 
+unsigned list_count(link_t* head);
+void list_set(link_t* head, unsigned index, int value);
+int list_get(link_t* head, unsigned index);
+void list_clear(link_t* link);
+
+#endif /* CLIST_H */