#include <stdio.h> #define F(X,Y) X*Y main() { int a=3, b=4; printf("%d\n", F(a+b, a-b)); }

为什么答案是11... 为什么答案是11 展开
 我来答
中隽8f
2021-04-17 · TA获得超过161个赞
知道小有建树答主
回答量:435
采纳率:39%
帮助的人:40.9万
展开全部


#include <stdio.h>

#define F(X,Y) X*Y

#define G(X,Y) (X)*(Y)


int main() {

int a = 3, b = 4;

printf("%d\n", F(a + b, a - b));// 宏展开式为:3 + 4*3 - 4,输出为: 11

printf("%d\n", G(a + b, a - b));// 宏展开式为:(3 + 4)*(3 - 4),输出为: -7

return 0;

}

最大的宝宝
2021-04-16 · TA获得超过828个赞
知道小有建树答主
回答量:1569
采纳率:67%
帮助的人:393万
展开全部
F(a+b, a-b) = a+b*a-b = 3 + 4*3 - 4 = 11
所以,一般情况下,F宏是这么写的:
#define F(X,Y) ((X)*(Y))
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式