ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# 入参和出参(Input Parameters and Output Parameters) 同`javascript`一样,函数有输入参数,但与之不同的是,函数可能有任意数量的返回参数。 ### 入参(Input Parameters) `入参(Input Parameter)`与变量的定义方式一致,稍微不同的是,不会用到的参数可以省略变量名称。一种可接受两个整型参数的函数如下: ``` pragma solidity ^0.4.0; contract Simple { function taker(uint _a, uint) { // do something with _a. } } ``` ### 出参(Output Parameters) `出参(Output Paramets)`在`returns`关键字后定义,语法类似变量的定义方式。下面的例子展示的是,返回两个输入参数的求和,乘积的实现: ``` pragma solidity ^0.4.0; contract Simple { //return sum and product function arithmetics(uint _a, uint _b) returns (uint o_sum, uint o_product) { o_sum = _a + _b; o_product = _a * _b; } } ``` 出参的的名字可以省略。返回的值,同样可以通过`return`关键字来指定。`return`也可以同时返回多个值,参见[Returning Multiple Values](http://solidity.readthedocs.io/en/develop/control-structures.html#multi-return)。出参的默认值为0,如果没有明确被修改,它将一直是0。 入参和出参也可在函数体内用做表达式。它们也可被赋值。 ### 返回多个值(Returning Multiple Values) 当返回多个参数时,使用`return (v0, v1, ..., vn)`。返回结果的数量需要与定义的一致。 #