问题
单项选择题
以下程序运行后的输出结果是
#define F(X,Y)(X) * (Y)
main( )
int a=3,b=4;
printf("%d\n",F(a++,b++));
A) 12
B) 15
C) 16
D) 20
答案
参考答案:A
解析: 本题考查带参数的宏定义,参数只是简单的字符替换,而不是参数的传递。本题中用a++替换X,用b++替换Y,再计算(a++)*(b++)的值,即3*4的值,其结果为12。