单选题 已知下面的程序段,正确的判断是______。
#define A3
#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