c语言宏替换问题

c语言宏替换问题第6题,完全不会替换,求教

SUB(a+b)*c=(a+b)-(a+b)*c
=5-5*5
=-20
答案C追问

为何

追答

不是有替换过程了吗,还问?

追问

为何乘以一个c,而前面不乘

追答

SUB(a+b)替换后是(a+b)-(a+b),即用a+b替换宏定义中的a,其它保持不变。于是SUB(a+b)*c替换后成了(a+b)-(a+b)*c,再代入数值计算就行了。

追问

完全明白了,谢谢你

温馨提示:答案为网友推荐,仅供参考
相似回答