Hi Below code is for inserting data to the front of the node ,just wanted to know we have reassigned start = tmp ,i.e. start will point to the inserted node which is now new first node but how Code: int add_begin(int data) { struct node *tmp; tmp=malloc(sizeof(struct node)); tmp->info=data;// put data tmp->link=start;// point to nxt node [B] start=tmp; // start will point to inserted node [/B]