问题
单项选择题
有以下程序:
#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++都是先使用变量值,再自增。