t=MAX(a+b,c+d)*10

问题描述:

t=MAX(a+b,c+d)*10
#include "stdio.h"
#define MAX(x,y) (x)>(y)?(x):(y)
void main()
{
int a=5,b=2,c=3,d=3,t;
t=MAX(a+b,c+d)*10;
printf("%d\n",t);
}
为什么等于7?不是70吗?

t=MAX(a+b,c+d)*10; 展开为t=(a+b)>(c+d)?(a+b):(c+d)*10;所以为7