4600-project-1/inc/list.hpp
2022-04-06 01:45:57 -05:00

29 lines
869 B
C++

/*
+-------------+---------+-----------------------+
| John Breaux | jab0910 | JohnBreaux@my.unt.edu |
+-------------+---------+-----------------------+
| 2022-04-03 |
+-----------------------------------------------+
*/
struct block {
block *prev;
block *next;
// data goes here
int data;
};
struct list {
block *start;
block *end;
int length;
};
// list operations:
// list_unlink: unlinks the last block in the list, and returns a pointer to it
block* list_unlink (list* l, bool lastblock=0);
// list_link: links the block b onto the end of the list
void list_link (list *l, block *b);
// list_init: links an array of blocks onto the end of a list
void list_init (list *l, block *m, int size);
// list_print: prints a list
void list_print(list *l, bool verbose = false);