title: Unable to get the logic behind macro and operators precedence
body: <p>The output of the  following code is 8  24  32. I understand the logic behind 8 and 24 but 32 seems very strange to me. Can somebody explain why it prints 32?</p>
  
  <pre><code>#define cube(x) x*x*x
  void main()
  {
      printf("%d ",cube(2));
      printf("%d ",16+cube(2));
      printf("%d ",16/cube(2));
  }
  </code></pre>