永发信息网

在c++中#define A(n) 2*n+1 则A(2+3)的值为8

答案:3  悬赏:40  手机版
解决时间 2021-02-24 14:47
在c++中#define A(n) 2*n+1 则A(2+3)的值为8
最佳答案
可以把#define看成占位符,直接替换就行了
把n替换成2 + 3
2 * 2 + 3 + 1 = 8

如果是这样的话
#define A(n) 2*(n)+1
那就是2 * (2 + 3) + 1 = 11
全部回答
宏是原地展开的,展开后是这样: 2*2+3+1 如果要避免这种歧义,定义宏的时候最好这样: #define A(n) 2*(n)+1
宏就相当于一个字符替换,所以a(2+3)被替换成2*2+3+1,值是8. 为了防止这种情况,定义宏时要多加几个括号: #define a(n) (2*(n)+1)
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
是不是高铁出来了就没有动车了
100层大逃亡58关怎么过
苍溪县青松汽车服务有限公司怎么去啊,有知道
履行出资人职责的机构进行的下列行为,不符合
QQ好友借钱不还怎么办
已经装了中央空调可以再加装新风系统吗
雨来是个怎样的人
河北建筑工程学院简称建院怎么样
寻找鲁迅的一篇文章
振南织造厂在什么地方啊,我要过去处理事情
蛋头是什么样子的
尴尬总共几笔,别查字典,快速回答。
依克赛这个地址在什么地方,我要处理点事
手机充电慢是什么原因
现是6.1.3已越狱,如何彻底去掉手机设置-通用
推荐资讯
06款奥德塞不发动车的情况下在p挡挂不了挡
长春市南关区人民检察院举报中心在哪里啊,我
【敏而好学的下一句】敏而好学的下一句
老肉行发财卤味店地址在什么地方,想过去办事
斯旺森益生菌 一天什么时候吃效果最好,饭前
西安哪里有卖好点的耳机?说清地点
医院口腔科可以洗牙吗
近义词:降临 :长年累月:
标志4S店是终身免费洗车的吗
大数据培训那家可信
手掌中间竖着有一条线,代表什么呢?
在如图的电路中,有四只开关,如果仅将开关S2
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?