title: same pointer showing different sizes in different compilers
body: <p>I have run the following code on Turbo C compiler and 
  GNU compiler:</p>
  
  <pre><code>int main()
  {
     char *cptr;
     printf("%d\n",sizeof(cptr));
     return 0;
  }
  </code></pre>
  
  <p>and I had output '<strong>2</strong>' on the Turbo C run and output '<strong>4</strong>' on GNU compiler run.
  I am on a 64 bit machine.
  Can anyone explain the fact behind such differences to me?</p>