polygon链矩阵公排循环互助游戏dapp系统开发智能合约定制功能逻辑

简介: polygon链矩阵公排循环互助游戏dapp系统开发智能合约定制功能逻辑

变量
1、状态变量
Solidity 支持三种类型的变量:

状态变量 – 变量值永久保存在合约存储空间中的变量。
局部变量 – 变量值仅在函数执行过程中有效的变量,函数退出后,变量无效。
全局变量 – 保存在全局命名空间,用于获取区块链相关信息的特殊变量。
Solidity 是一种静态类型语言,这意味着需要在声明期间指定变量类型。每个变量声明时,都有一个基于其类型的默认值。没有undefined或null的概念。

pragma solidity ^0.4.22;
contract SolidityTest1{

uint storedDate; //状态变量

constructor() public {
    storedDate = 10; //使用状态变量
}
AI 代码解读

}

2、局部变量
变量值仅在函数执行过程中有效的变量,函数退出后,变量无效。函数参数是局部变量

pragma solidity ^0.4.22;

contract SolidityTest2{

uint storedDate; //状态变量
constructor() public{
    storedDate = 10;
}

function getResult() public view returns(uint){
    uint a=1;  //局部变量
    uint b=2;
    uint result = a+b;
    return result;//访问局部变量
}
AI 代码解读

}

3、全局变量
这些是全局工作区中存在的特殊变量,提供有关区块链和交易属性的信息。

名称 返回
blockhash(uint blockNumber) returns (bytes32) 给定区块的哈希值 – 只适用于256最近区块, 不包含当前区块。
block.coinbase (address payable) 当前区块矿工的地址
block.difficulty (uint) 当前区块的难度
block.gaslimit (uint) 当前区块的gaslimit
block.number (uint) 当前区块的number
block.timestamp (uint) 当前区块的时间戳,为unix纪元以来的秒
gasleft() returns (uint256) 剩余 gas
msg.data (bytes calldata) 完成 calldata
msg.sender (address payable) 消息发送者 (当前 caller)
msg.sig (bytes4) calldata的前四个字节 (function identifier)
msg.value (uint) 当前消息的wei值
now (uint) 当前块的时间戳
tx.gasprice (uint) 交易的gas价格
tx.origin (address payable) 交易的发送方

目录
打赏
0
0
0
0
5
分享
相关文章
LuaJIT编写的解析十六进制数据
LuaJIT编写的解析十六进制数据
111 1
学生管理系统【GUI/Swing+MySQL】(Java课设)
学生管理系统【GUI/Swing+MySQL】(Java课设)
159 0
lodash删除对象的属性
lodash删除对象的属性
1066 0
C#编写WinForm窗体应用程序(第四期)
在 C# 语言中 RadioButton 是单选按钮控件,多个 RadioButton 控件可以为一组,这一组内的 RadioButton 控件只能有一个被选中。
C#编写WinForm窗体应用程序(第四期)
stm32f407探索者开发板(四)——点亮跑马灯(库函数)
stm32f407探索者开发板(四)——点亮跑马灯(库函数)
214 0
stm32f407探索者开发板(四)——点亮跑马灯(库函数)
java程序员分水岭,内部类详解
外部类和成员内部类的成员重名时,遵循就近原则,如果想要访问外部类的成员,使用外部类名.成员即可🌕
116 0
java程序员分水岭,内部类详解
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问