c - I cannot traverse through my linked list, after creating an array of nodes -


i've created array of nodes linked list when attempt traverse print linked list crash. traversal works treat when not create array of nodes figure snippit of code problem.

   typedef struct node { book data; struct node *next; } *node;  node newnodes[100]; int = 0; (i=0; i<n; i++)  {     newnodes[i] = (node)malloc(sizeof(struct node));      newnodes[i]->next = null;     newnodes[i]->data.time = null;     newnodes[i]->data.format = null;      }   //return struct holds array; 

clearly i've done wrong, insert_node simple insert @ front algorithm way. can see i've gone wrong?

can see i've gone wrong?

the posted code shows have created 100 pointers , assigned memory them value returned malloc. however, haven't linked them form linked list.

perhaps meant use:

for (i=0; i<n; i++)  {     newnodes[i] = (node)malloc(sizeof(struct node));      newnodes[i]->next = null;     newnodes[i]->data.time = null;     newnodes[i]->data.format = null;      }  // make links between nodes. (i=0; i<n-1; i++)  {    newnodes[i]->next = newnodes[i+1]; } 

that make newnodes[0] head of linked list.

ps

using typedef called node pointer confusing, @ least me. recommend using:

typedef struct node {     book data;     struct node *next; } node;  typedef node* nodeptr;