Can anyone tell me why this function is not adding node to last and how can i solve it? : <p>here is the c language code:</p>

<pre><code>struct node
{
  int num;
  struct node* next;
};

void add_last(struct node* head,struct node* new_node)
{
  new_node-&gt;next=head;
  head=new_node;
}
</code></pre>

<p>I dont need code , I only want to understand why this is not working
thanks in advance.</p>
