请教大家一个c语言的宏定义的问题

2020-01-15 19:22发布

如下的宏定义:
#define ADD(a,b) a+b

c=ADD(a,b)*ADD(a++,++b);
是可以编译过去的,但是如果使用下面的公式则编译不过去
c=a+b*a+++++b;

个人理解使用宏展开后和上述公式应该是一致的啊,为啥一个可以编译过去,一个不可以?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。