Linked Lists

Run Settings
LanguageC
Language Version
Run Command
#include "llist.h" int main(void) { char string[20] ; int found, duplicate ; NODE *list, *nodeptr ; int insert( NODE *pList, char *string) ; int delete( NODE *pList, char *string) ; NODE *init_list(void) ; NODE *find( NODE *pList, char *string) ; void traverse ( NODE *pList) ; printf("Hello World!\n"); list = init_list() ; return 0; }
// llist.h // // Includes. #include <stdio.h> #include <stdlib.h> #include <string.h> // Defines. #define DUMMY_TRAILER '\177' #define DUPLICATE 1 #define NEW_NODE 0 #define FOUND 1 #define NOT_FOUND 0 // Types. typedef struct node NODE; struct node { char *string; NODE *next; };
// init_init.c // Includes. #include "llist.h" // init_list() nodes // parms (void) // return ptr to LList (NODE *) NODE *init_list(void) { NODE *plist = NULL; printf ("init_list(),s\n") ; if ( (plist = (NODE *) malloc(sizeof(NODE))) == NULL) { printf ("Fatal malloc(), init_list()\n"); exit (1); } plist->string[0] = '\0' ; if ( (plist->next = (NODE *) malloc(sizeof(NODE))) == NULL) { printf ("Fatal malloc(), init_list()\n"); exit (2); } plist->next->string[0] = DUMMY_TRAILER ; plist->next->string[1] = '\0' ; plist->next->next = NULL ; #ifdef bogus #endif printf ("init_list(),e\n") ; return plist ; }
Editor Settings
Theme
Key bindings
Full width
Lines