struct node { int data; struct node *next; }; struct node * current; struct node * tmp; // to delete the first node tmp = current; current = current ->next; free(tmp);