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;才行,这样意思就是楼上说的