关于C语言基础问题
来源:百度知道 编辑:UC知道 时间:2024/05/14 15:01:22
#define i 1
#define j 2
#define M i+j
main()
{printf("%d",M*M);
}
为什么这个得出来的答案是5,而不是9?
#define j 2
#define M i+j
main()
{printf("%d",M*M);
}
为什么这个得出来的答案是5,而不是9?
应该是(i+j)
你那样写是
i+j*i+j
1+2*1+2
当然是5了
{printf("%d",M*M);
}
3*3=? 不是9吗??
M*M=i+j*i+j=1+2*1+2=5,缺少括号
因为展开后的式子是i + j * i + j是不是等于5了