宏是字符串替换,跟函数不同。这个等于2+1*1+2
F(a+b)实际是a+b*a+b=2+1*2+1=5
如果要是9,那么#define F(x) (x)*(x)这样才行
因为你的F(a+b)虽然类似于F(X),但是a+b不是一个整体,也就是说F((a+b))与F(a+b)的区别。本题目的结果应该是a+b*a+b=5.