问题
单项选择题
请读程序:
#include <stdio.h>
#define SUB(X,Y) (X)*Y
main()
int a=3,b=4;
printf("%d\n",SUB(a++,b++));
上面程序的输出结果是( )。
A.12
B.15
C.16
D.20
答案
参考答案:A
解析: 本题的考查点是宏定义。a++的形式应当先使用a值,然后a才进行自加1运算,所以程序在进行SUB()乘法运算的时候,仍取a,b的原值,最后输出的结果是12。