下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922
试卷 > 软考中级 > 软件设计师 > 2026年10月24日软考软件设计师考试《基础知识》真题及答案解析 > 本题我的试卷

宏定义#define SQUARE(x) x*x,调用SQUARE(1+2)的叙述中,正确的是( )。

  • A展开为(1+2)*(1+2),计算结果为9,符合设计意图
  • B展开为(1+2)*1+2,计算结果为5,由于宏参数重复计算导致结果不符合设计意图
  • C展开为1+2*1+2,计算结果为5,由于运算符优先级问题导致计算结果不符合设计意图
  • D展开为1+2*(1+2),计算结果为7,由于结合性问题导致计算结果不符合设计意图
正确答案C
答案解析
宏直接文本替换不带括号,SQUARE(1+2)替换得到1+2*1+2;*优先级高于+,结果等于5,是运算符优先级引发错误。