title: Why is my pointer not null after free?
body: <pre><code>void getFree(void *ptr)
  {
      if(ptr != NULL)
      {
          free(ptr);
          ptr = NULL;
      }
      return;
  }
  int main()
  {
  char *a;
  a=malloc(10);
  getFree(a);
  if(a==NULL)
      printf("it is null");
  else
      printf("not null");
  }
  </code></pre>
  
  <p><strong>Why is the output of this program not NULL?</strong></p>