#define SQR(x) printf("The square of x is %d.\n", ((x)*(x)));
#define SQR2(x) printf("The square of "#x" is %d.\n", ((x)*(x)));
#define XNAME(n) x ## n
int main(int argc, char* argv[])
{
SQR(8);
SQR2(8);
int XNAME(8) = 5;
return 0;
}
运行结果:
The square of x is 64.
The square of 8 is 64.
注意:上面XNAME(8)被展成x8,这就就是##的用法。