C语言的一个宏定义意义?解决思路

C语言的一个宏定义意义?
#define fuc(A) A++;\
  A = A*A;

------解决方案--------------------
C/C++ code

#define fuc(A) A++;\
               A = A*A;
int main()
{       int a=2;
        fuc(a); //a自增 然后自己的平方赋给自己
        printf("%d",a);
        getch();
}

------解决方案--------------------
就是把fuc(A)替换为:A++;A=A*A;
其实相当于定义了一个内联函数:
C/C++ code
inline void fun(A)
{
  A++;
  A=A*A;
}

------解决方案--------------------
#define fuc(A) (A)++;\ 
(A) = (A)*(A);
加上括号安全一些。
------解决方案--------------------
#define fuc(A) A++;\
A = A*A;
我在2005上调试了下这样定义通过不了,#define fuc(A) A++;A = A*A;才行,这样意思就是楼上说的