John Breaux
90ab3166a2
list: * create block, list * create link(), unlink(), init(), print() main: * create main * test list actions
23 lines
561 B
C++
23 lines
561 B
C++
|
|
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);
|
|
// 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); |