Solidity是以太坊智能合约编程语言,当然你在阅读这篇文章之前,你应该对以太坊、智能合约有初步或者深入的了解,当然你还是不了解的话,建议你先去看以太坊是什么。
时间单位
时间单位:seconds,minutes,hours,days,weeks,years均可做为后缀,并进行相互转换,规则如下:
数据:Lido以太坊质押总量突破800万枚:8月10日消息,Lido以太坊质押总量已突破800万枚,截至发文时为8,022,346ETH,约148.55亿美元,已支付的以太坊质押奖励达383,914ETH,约7.1亿美元,当前以太坊质押APR为3.8%,此外Lido平台质押代币总价值约150亿美元。[2023/8/10 16:16:58]
1==1seconds(默认是seconds为单位)
1minutes==60seconds
1hours==60minutes
以太坊扩容协议SKALE计划于4月14日左右进行V2主网更新:3月19日消息,以太坊扩容协议SKALE计划于4月14日左右进行V2主网更新。目前,V2主网已经完成升级,四个V2暂存链已发布,并将进行持续两者的测试网。
据悉,SKALEV2主网将具有SKALEHub、高级多重签名功能、速度游戏模式、随机数生成器预编译、预言机V1、阈值加密等功能更新。[2022/3/19 14:06:44]
1days==24hours
1weeks=7days
USDC Treasury在以太坊网络增发超5813万枚USDC:Whale Alert数据显示,北京时间11月29日04:46至04:57期间,USDC Treasury分三笔在以太坊网络上增发58131388枚USDC。[2020/11/29 22:28:41]
1years=365days
使用这些单位进行日期计算需要特别小心,因为不是每年都是365天,闰年是366天,且并不是每天都有24小时,因为还有闰秒。由于无法预测闰秒,必须由外部的预言来更新从而得到一个精确的日历库。
这些后缀不能用于变量。如果想对输入的变量说明其不同的单位,可以使用下面的方式:
pragmasolidity^0.4.16;contracttestTUnit{functioncurrTimeInSeconds()publicpurereturns(uint256){returnnow;}functionf(uintstart,uintdaysAfter)public
{if(now>=start+daysAfter*1days)
{//……}}}
货币单位
一个字面量后面跟随一个后缀wei、finney、szabo或者ether,这些后缀就是货币单位,不同的单位可以转换。不含任何后缀的默认单位是wei。不同的以太币单位转换关系如下:
1ether==10^18wei
1ether==10^6szabo
1ether==10^3finney
1ether==1000finney
我们可以使用以下代码验证一个转换关系:
pragmasolidity^0.4.16;contracttestUnit{functiontf()publicpurereturns(bool){if(1ether==1000finney){returntrue;}returnfalse;}functionts()publicpurereturns(bool){if(1ether==1000000szabo){returntrue;}returnfalse;}functiontgw()publicpurereturns(bool){if(1ether==1000000000000000000wei){returntrue;}returnfalse;}}
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。