我想定义声明和初始化变量的宏。更确切地说,我希望宏MYVARS(x,y)
将被重新定义为
int myvar=x;
int myvarr=y;
我写
#define MYVARS(x,y) int myvar=x;##\n##int myvarr=y;
但是在预处理之后,我发现MY_VAR(50,60)将被替换为int myvar=50\ nint myvarr=60;
。如何解决这个问题?
答案 0 :(得分:0)
不需要在单独的行上使用变量声明。完全放弃\n
并完成:
#define MYVARS(x,y) int myvar=x; int myvarr=y;
或者,甚至更好:
#define MYVARS(x,y) int myvar=x, myvarr=y;
答案 1 :(得分:0)
您可以使用:: #define MYVARS(x,y) int myvar=x,myvarr=y;
答案 2 :(得分:0)
你也可以尝试这个
#define MYVARS(x,y) int myvar=x;\
int myvarr=y;