以下程序的输出结果
#define MT(a,b,c) a*b+cmain()
{int x=1,y=2,z=3;
printf("%d\n",MT(x+y,y+z,z+x));
我是这样算的:a=x+y=3, b=y+z=5, c=3+1=4,代入最上面MT定义,得3*5+4=19;然而答案却是12,有请网友帮助并详细给解释下,谢谢!
2007-03-12 10:48
代入后
1+2*2+3+3+1

2007-03-12 10:51
2007-03-12 10:53
2007-03-12 11:03

2007-03-12 11:28
2007-03-12 11:42

2007-03-12 12:31

2007-03-12 12:43
2007-03-12 12:59
2007-03-12 13:08