问题
单项选择题
已知下面的程序段,正确的判断是 ______。
#define A 3
#define B(A) ((A+1)*A)
……
int a=3;
X=3*(A+B(7));
A) 程序错误,不允许嵌套定义
B) X=93
C) X=81
D) 程序错误,宏定义不允许有参数
答案
参考答案:C
解析:[评析] 本题的宏定义是合法的,宏定义展开为3*(3+((A+1)*a))=3*(3+((7+1)*3))=81。