永发信息网

急,C++问题

答案:3  悬赏:20  手机版
解决时间 2021-04-16 19:20
#include [br/] using namespace std;[br/] func(int a,int b)[br/]{int c;[br/] c=a*b;[br/] return (c);[br/] }[br/]int main()[br/]{int x=6,y=7,z=8,r;[br/] r=func((x--,y,x*y),z--);[br/] cout<<r;[br/] return 0;}结果为多少,请简述过程
最佳答案
看上面的情况,你看不明白的应该就是r=func((x--,y,x*y),z--);这一句吧,其中func()一共接收了两个参数,分别是(x--,y,x*y)和z--,(x--,y,x*y)在这里是一个表达式,可以得到一个值,它里面的三个表达式是用逗号分隔的,所以按从左向右的顺序来看,先是x--,在此x变为5,y处没有数据变化,最后是x*y,得到35,这个数处于此表达式的最右边,所以它的值就代表了整个表达式的值,即(x--,y,x*y)的值为35,另一个参数是z--,但因为是z--而不是--z,所以是先使用后自减,就是说要先把z的当前值8作为参数传给func()所以自定义函数收到的两个参数分别是35和8,返回它们和积,当然就是280了
全部回答
程序没错,主函数通过func((x--,y,x*y),z--)调用函数,首先第一个参数是逗号表达示值(x--(值为5),y,x*y(逗号表达示最后一式的值为表达示值))为35,在又z--为先引用后自减,主函数传两实参func(35,8)

结果是发生错误,参数传递有缺失,你定义了func(int a,int b)却在main函数那里传递了x--,y和x*y共三个参数,所以错误

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
红花沟大桥我想知道这个在什么地方
谁知道春秋Q传游戏怎么拒绝私聊?着急,麻烦
结城的介绍
成都金妮美容美发学校
《龙》的激活码怎么申请
怎样补充皮肤水份
赞美幼儿户外活动语句,户外广告牌的销售流程
请问谁知道相等位移的时间之比是多少,为什么
跪求音速种子!~
怎样发泄心中的压力?
不复习,如何轻松通过四六级?
西江月茶艺在什么地方啊,我要过去处理事情
这个世界还有什么值得我们去伤感……?
广州原来是什么气候,现在又是什么气候
Hello,Grandma.中的G为什么是大写的?
推荐资讯
炉心融解的词,要把日文翻成中文唱的那种,急
诺基亚6630 怎么格机?我的机子运行超级慢而
《暮色》这部片有无第2部?
现在上学学哪种技术好点?自考难吗?
请教佳能 EF 2X III 单反镜头2倍三代增距镜的
狗狗经常抽搐,要怎样按摩?
为什么我安装了itudou,却下载不了电影?
光棍节快到了你将怎样度过?
问下这武器可以不
诗句中带圆的诗句,有关圆字的诗句
塑料箱 塑料缸 养水龟 对龟有害么
我有一教官于毒问下?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?