问题 单项选择题

有以下程序:
#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++)进行展开后,宏的返回值为12,注意a++,b++都是先使用变量值,再自增。

填空题
单项选择题