modified: src/llist.c

modified:   src/llist.h
sql
simon 2024-12-11 17:27:25 +01:00
parent a88262bb28
commit 9014bd0517
2 changed files with 8 additions and 5 deletions

View File

@ -15,6 +15,7 @@ llist *llistNew(void *data, int (*cmpFN)(void *a, void *b)) {
r->data = data;
r->prev = NULL;
r->next = NULL;
r->tail = r;
}
return r;
}
@ -22,11 +23,11 @@ llist *llistNew(void *data, int (*cmpFN)(void *a, void *b)) {
/*return last node of linked list;
*/
llist *llistTail(llist *head) {
llist *tail = head;
while (tail->next != NULL) {
tail = tail->next;
}
return tail;
// llist *tail = head;
// while (tail->next != NULL) {
// tail = tail->next;
// }
return head->tail;
}
/* creates new node from data and appends it to tail
@ -40,6 +41,7 @@ llist *llistAppend(llist *head, void *data) {
new->next = NULL;
new->prev = tail;
tail->next = new;
head->tail = new;
}
return new;
}

View File

@ -6,6 +6,7 @@ typedef struct llist {
void *data;
struct llist *next;
struct llist *prev;
struct llist *tail;
int (*cmpFn)(void *a, void *b); // function that compares data
} llist;