Solidity 常用方法

本文详细介绍了以太坊智能合约中的关键函数及用途,包括区块信息查询、消息调用上下文获取、数学运算、哈希计算等功能,帮助开发者更好地理解和使用这些基本组件。
  • block.blockhash(uint blockNumber) returns (bytes32):给定块的散列 - 仅适用于256个最近的块
  • block.coinbase (address):当前块矿工的地址
  • block.difficulty (uint):当前块难度
  • block.gaslimit (uint):当前块gaslimit
  • block.number (uint):当前块号
  • block.timestamp (uint):当前块的时间戳
  • msg.data (bytes):完整的calldata
  • msg.gas (uint): 剩余gas
  • msg.sender (address): 消息的发送者(当前呼叫)
  • msg.value (uint): 与消息一起发送的数量
  • now (uint):当前块时间戳(block.timestamp的别名)
  • tx.gasprice (uint): gas价格的交易
  • tx.origin (address) :交易的发送者(全调用链)
  • assert(bool condition): 如果条件为false,则中止执行并恢复状态更改(用于内部错误)
  • require(bool condition): 如果条件为false,则中止执行并恢复状态更改(用于格式错误的输入或外部组件中的错误)
  • revert(): 中止执行并恢复状态更改
  • keccak256(...) returns (bytes32):计算(紧密包装)参数的Ethereum-SHA-3(Keccak-256)散列
  • sha3(...) returns (bytes32):keccak256的别名
  • sha256(...) returns (bytes32): 计算(紧密包装)参数的SHA-256散列
  • ripemd160(...) returns (bytes20) : 计算(紧密包装)参数的RIPEMD-160哈希值
  • ecrecover(bytes32 hash, uint8 v, bytes32 r, bytes32 s) returns (address) : 从椭圆曲线签名恢复与公钥相关联的地址,错误返回零
  • addmod(uint x, uint y, uint k) returns (uint) : 计算(x + y)%k,其中以任意精度执行加法,并且不在2 ** 256周围
  • mulmod(uint x, uint y, uint k) returns (uint) : 计算(x * y)%k,其中以任意精度执行乘法,并且不会在2 ** 256周围
  • this (current contract’s type) : 目前的合约,明确转换为地址
  • super : 较高的继承层次结构中的合同一个级别
  • selfdestruct(address recipient) : 摧毁目前的合约,将资金送到给定地址
  • suicide(address recipieint) : selfdestruct的别名
  • <address>.balance (uint256) : 余额地址在wei
  • <address>.send(uint256 amount) returns (bool) : wei发送给定量到地址,失败时返回假
  • <address>.transfer(uint256 amount) : 发给定量的wei先生解决,抛出失败
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值