#ifndef LINKED_LIST_H #define LINKED_LIST_H typedef struct list_entry list_entry_t; struct list_entry { void *key; void *value; list_entry_t *next; }; typedef struct { list_entry_t *next; int (*compare)(const void *, const void *); }list_head_t; int cmp_double(const void *, const void *); int cmp_string(const void *, const void *); list_head_t *list_init(int (*cmp)(const void *, const void *)); int list_insert(list_head_t *, void *, void *); void* list_search(list_head_t *, void *); void list_delete(list_head_t *); //int double_insert(list_head_t *, double , double ); int cmp_int(const void *, const void *); #endif