#include <stdio.h>
#define SQR(x) (x*x)
int main()
{
int a,b = 3;
a = SQR(b+2);
printf("a = %d\n",a);
return 0;
}
上面这段代码使用SQR宏来算平方。
使用预编译命令预编译这段代码,在c语言中预编译过程会将函数中宏替换成对应的值,如SQR(b+2)这个宏将会被替换成相应的值,预编译后代码如下:
int main()
{
int a,b = 3;
a = (b+2*b+2);
printf("a = %d\n",a);
return 0;
}