#include<stdio.h>
#define M(x, y) x / y
int main(){
printf("%d", M(10,2+3));
}
为什么等于8而不等于2
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
会修bug的猫 2022-12-25 21:47关注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)); }本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录