pragma solidity 0.6.2;
/*
判断是否为合约地址,以及转账ETH
*/
library Address {
function isContract(address addr) public view returns (bool) {
uint size;
assembly { size := extcodesize(addr) }
return size > 0;
}
function sendEth(address payable recipient, uint256 amount) internal {
require(address(this).balance >= amount, "Address: insufficient balance");
(bool success, ) = recipient.call.value(amount)("");
require(success, "Address: unable to send value, recipient may have reverted");
}
}
library_AddressPayable
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 1.什么是钱包? 钱包就是存储和使用数字货币的工具,一个币对应一个钱包。用来存储币种,或者“交易”币种。 冷钱包就...
- 最近各种项目的代币空投层出不穷,有手工打币空投的,也有向代币合约转账0eth进行空投的,但是最近出现了一些无需转账...
- 参考[https://blog.csdn.net/qq_16137795/article/details/8453...
- 5月以来,哪怕对市场风向再不敏感的人,也感觉到阵阵凉意。二级市场连续下挫,一级市场融资环境恶化,不论企业融资数量还...