#include "lib/list.h" #include "lib/array.h" void linkedlist_demo() { int val = 7; Node* head = node_init(val); printf("Init with %i:\n", val); list_print(head); val = 12; list_push(&head, val); printf("Push %i:\n", val); list_print(head); val = 99; printf("Append %i:\n", val); list_append(&head,val); list_print(head); /* val = 45; */ /* printf("Insert %i:\t", val); */ /* list_insert(&head, val, 2); */ /* list_print(head); */ /* val = 42; */ /* printf("Insert %i:\t", val); */ /* list_insert(&head, val, 1); */ /* list_print(head); */ /* printf("Pop %i:\t\t", list_pop(&head)); */ /* list_print(head); */ /* printf("Remove %i:\t",list_rmlast(&head)); */ /* list_print(head); */ /* printf("Remove %i:\t",list_rm(&head,1)); */ /* list_print(head); */ /* list_vprint(head); */ /* head->next = node_init(14); */ /* head->next->next = node_init(22); */ /* list_free(&head); */ /* list_print(head); */ printf("Length: %i\n", list_length(head)); int i=2; printf("list position %i: %i\n", i, list_get(head,i)); } void array_demo() { Array a = array_init(3); for (int i = 0; i < 10; ++i) array_push(&a, i+1*2); array_print(&a); array_pop(&a); array_pop(&a); array_pop(&a); array_pop(&a); array_pop(&a); array_print(&a); /* FIX: using array after free? */ array_free(&a); array_print(&a); for (int i = 0; i < 10; ++i) array_push(&a, i+1*2); array_print(&a); } int main() { linkedlist_demo(); /* array_demo(); */ /* puts("Hello from main"); */ return 0; }