问题
单项选择题
下面程序的输出结果是_______。
#define P1(x)printf(x)
main()
char d[]="p";
P1(d) ;
P1("d");
A.pd
B.d"d"
C."p"d
D."p""d"
答案
参考答案:A
解析:[评析] 带参数的宏定义的一般形式为:#define宏名(参数表)字符串程序中的P1(d);经宏置换后为printf(d);,所以输出字符串p;程序中的P1("d");经宏置换后printf("d")。