为什么等于8而不等于2



#include
#define  M(x, y)  x / y
int main(){

printf("%d", M(10,2+3));

}

M(10,2+3)会被直接替换成 10/2+3 = 8
要到达你想要的结果得加括号

 
#include<stdio.h>
#define  M(x, y)  ((x) / (y))
int main(){
printf("%d", M(10,2+3));
}