问题 单项选择题

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

名词解释
单项选择题