问题 单项选择题

有以下程序: #include <stdio.h> #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

解析: 本题考查带参数的宏定义。对F(a++,b++)展开后,宏的返回值为3×4=12,这里a++,b++都是先使用变量值,再自增。

选择题
单项选择题