title: Difference of pointer pointing to integer variable always gives 1 as answer?
body: <p>I cant understand the output of following program. <code>p</code> is pointing to <code>a</code>, and <code>q</code> is pointing to <code>b</code>, <code>r</code> is pointing to <code>c</code>. But the difference of two pointers is always 1</p>
  
  <pre><code>
  main()
  {
      int a,c,b;
      int *p,*q,*r;
      p = &a;
      q = &b;
      r = &c;
      b = p - r;
      printf("(%d) - (%d) = %d",p,q,b);
  }
  </code></pre>
  
  <p>The output of above program is</p>
  
  <pre><code>(1331616036) - (1331616028) = 1
  </code></pre>