扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
1. 在函数调用max(3+5,sqtr(4),(7,8))中,实参个数是多少?
创新互联建站长期为近1000家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为武定企业提供专业的网站设计、成都做网站,武定网站改版等技术服务。拥有10余年丰富建站经验和众多成功案例,为您定制开发。
参数1:3+5
参数2:sqtr(4)
参数3:(7,8)
2. 在函数调用func((x+2,y),z*2)中实参个数是多少?
参数1:(x+2,y)
参数2:z*2
1.
fun((a,b),(c,d,e));语句中含有2个实参
注意:
(a,b)和(c,d,e)都是逗号表达式,
逗号表达式的值取最右值,
所以:
fun((a,b),(c,d,e))可以等价的看成是:fun((b),(e));含有2个实参
2.
fun(a[3],n);语句中有2个实参,也就是a[3]的值,n值
看func()内部直接包含的逗号就可以了.这个题中,直接包含的只有一个逗号,所以就是两个参数
用逗号分辨参数个数,但是小括号里的逗号不算,比如你这个函数,其中的参数有
x+y 、 e1,e2 、 fun(xy,d,(a,b)) 这三个参数。
其中(e1,e2)是个匿名函数当参数, fun()是个函数参数,其中又有 xy、d、(a,b)
函数名 fun, 实参 里 的第三个函数 若是 fan(), 那么 函数 fun 有3个实参:
实参 1: 表达式 a+b
实参 2: 逗号表达式 (x,y)
实参3: 函数调用,也是表达式 fan(n+k, d(a+b)); fan 函数 自己的实参 2 是 函数 d(a+b).
-----
你若书写的参数3 是 fun( n+k, d(a+b) ) , 那么就 有 矛盾了。这个 fun 只 有2个实参。 而外层的 fun 却是3个参数。
2个实参,实参和形参在数量是一致的。
从函数名后面的小括号里的逗号数量就可以看出来(看最外层括号)。
里层的两个括号,分别是两组逗号表达式,(rec1,rec2,rec3)和(rec4,rec5)的返回值分别作为两个实参传入函数。
逗号表达式是返回最右边的表达式的值,所以
(rec1,rec2,rec3)返回rec3的值,(rec4,rec5)返回rec5的值。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流