问题
单项选择题
下列选项中不会引起二义性的宏定义是( )。
A) #define S(x)x*x
B) #define S(x)(x)*(x)
C) #define S(x)(x*x)
D) #define S(x)((x)*(x))
答案
参考答案:D
解析: 本题考查带参数的宏的替换。有些参数表达式必须加括号,否则,在实参表达式替换时,会出现错误。
下列选项中不会引起二义性的宏定义是( )。
A) #define S(x)x*x
B) #define S(x)(x)*(x)
C) #define S(x)(x*x)
D) #define S(x)((x)*(x))
参考答案:D
解析: 本题考查带参数的宏的替换。有些参数表达式必须加括号,否则,在实参表达式替换时,会出现错误。