宏,就是字符替换
例子:
#define M(x,y,z) x*y+z
void main()
{
int a=1,b=2,c=3;
printf("%d\n",M(a+b,b+c,c+a));//a+b*b+c+c+a=12
}
#define POW(x) (x)*(x)
#define DOUBLE(x) (x)+(x)
void Fun(bool b)
{
switch(b)
{
case true;
printf("真\n");
break;
case false;
printf("假\n");
break;
}
}
int main()
{
printf("%d\n",POW(10+10));//-》10+10*10+10
printf("%d\n",DOUBLE(10*10)*10);//-》(10*10)+(10*10)*10
return 0;
}