#define 中 的“##”与“#”
#include <stdio.h>
#define test(n) printf("test("#n")=%d\n",val##n)
#define a #a
int main()
{
int val3=10;
int val8=23;
test(3);
test(8);
}
在#define中定义了“#”,“##”两种操作。“#”用来把参数转换成字符串,“##”则用来连接前后两个参数,把他们变成一个字符串。看结果:
#n为一个指向字符串"n"的char 类指针。