看不懂解题答案
1 不应该是1吗 含参的话宏定义跟函数是不一样的。
宏定义直接把式子代进去,得到式子之后才按优先级运算
可以看一下小甲鱼《带你学C带你飞》课后作业 S1E5 测试题的第六题
#define F(n) 2*n
F(3+2)是多少?
答案是:8
3+2代进去,得到式子:2*3+2=8
不是将3+2=5 的5代进去。
这是一样的道理。 一阵三十六 发表于 2021-12-30 15:16
含参的话
宏定义跟函数是不一样的。
宏定义直接把式子代进去,得到式子之后才按优先级运算
我看的懂过程,但是答案解出来不对啊,不是乘除先算吗,得不出7啊 2+(1*2)+(1/2)+(1*2)+1=2+2+0+2+1=7 一阵三十六 发表于 2021-12-31 13:27
2+(1*2)+(1/2)+(1*2)+1=2+2+0+2+1=7
哦 ,1/2 应为是 int 所以直接变成0吗
页:
[1]