输入参数

pragma solidity ^0.4.16;

contract Simple {
function taker(uint _a, uint _b) public pure {
// do something with _a and _b.
}
}

输出参数

pragma solidity ^0.4.16;

contract Simple {
function arithmetics(uint _a, uint _b) public pure returns (uint o_sum, uint o_product) {
o_sum = _a + _b;
o_product = _a * _b;
}
} 关键字returns,返回参数如果没有,则返回0

返回多个值

return (v0, v1, ..., vn),函数的输出参数必须匹配同样数量参数

内部函数调用

pragma solidity ^0.4.16;

contract C {
function g(uint a) public pure returns (uint ret) { return f(); }
function f() internal pure returns (uint ret) { return g(7) + f(); }
}

外部函数调用

表达式 this.g(8), c.g(2)

当调用其他合约的函数,调用的转帐wei,gas使用.value() 和 .gas()

pragma solidity ^0.4.0;

contract InfoFeed {
function info() public payable returns (uint ret) { return 42; }
} contract Consumer {
InfoFeed feed;
function setFeed(address addr) public { feed = InfoFeed(addr); }
function callFeed() public { feed.info.value(10).gas(800)(); }
}

最新文章

  1. JAVA面向对象
  2. WCF的Restful和TCP方式调用性能比较
  3. mysql数据库乱码解决方法之一
  4. imx6 关闭调试串口
  5. 三维网格细分算法(Catmull-Clark subdivision & Loop subdivision)附源码
  6. __future__
  7. DWR入门教程
  8. 硬盘结构介绍--mbr及分区
  9. POJ 1797 Heavy Transportation (dijkstra 最小边最大)
  10. Lua 基本语法
  11. ASP.NET - Eval使用自定义的方法
  12. HTML5学习知识点
  13. Entity Framework分页扩展
  14. Django 系列博客(九)
  15. global的使用
  16. HDU6011
  17. java.exe
  18. 【Linux 进程】exec族函数详解
  19. chromium浏览器开发系列第三篇:chromium源码目录结构
  20. mybatis中单个参数的引用

热门文章

  1. 服务端 安装配置 svn
  2. R语言批量生成变量(变量名中含有参数)
  3. SQL 随手记
  4. Windows 搭建ASP.NET Boilerplate项目开发环境
  5. 【算法笔记】B1023 组个最小数
  6. bzoj1041 圆上的整点 数学
  7. pingUtil
  8. git 项目常用命令
  9. mac 系统配置(一)
  10. drf之视图