#include<stdio.h>
#define CUBE(X) (X*X*X)
int main()
{
int a, b;
b = 3;
a = CUBE(++b);
printf ("a = %d b = %d", a, b );
return 0;
}
How CUBE(++b) giving 150 as an output instead CUBE(++b * ++b * ++b) should be 4 * 5 * 6 = 120. Anyone please explain this