// SPDX-License-Identifier: GPL-3.0
pragma solidity >=0.7.0 <0.9.0;
contract SendEther {
address to = 0xDd17d10B2D08E4036aEe485f8d586bD6aDdB8203;
//将调用者msg.sender的ETH 转到固定的 to 外部地址
function sendViaTransfer() public payable {
// This function is no longer recommended for sending Ether.
payable(to).transfer(msg.value); //contract
}
//将调用者msg.sender的ETH 转到 to 外部地址
function sendViaTransfer1(address payable _to) public payable {
// This function is no longer recommended for sending Ether.
_to.transfer(msg.value); //contract
}
//给合约转ETH
function sendViaTransferContract() public payable {
// This function is no longer recommended for sending Ether.
payable(address(this)).transfer(msg.value); //contract
}
//将合约地址的ETH转账到调用的钱包地址
function transferTo(uint256 wad) public returns (bool) {
payable(msg.sender).transfer(wad);
return true;
}
//将合约地址的ETH转账到指定钱包地址
function transferTo(address payable _to, uint256 wad)
public
returns (bool)
{
_to.transfer(wad);
return true;
}
function sendViaSend() public payable {
// Send returns a boolean value indicating success or failure.
// This function is not recommended for sending Ether.
bool sent = payable(to).send(msg.value);
require(sent, "Failed to send Ether");
}
//给合约地址与外部地址同时转账 如果在调用此函数时,附带了10Wei,那么就会给account账户转移10Wei,给合约账户转移10Wei
function transfer3() public payable {
payable(to).transfer(10);
}
//合约接收 Ether 的合约必须至少具有以下功能之一
// Function to receive Ether. msg.data must be empty
receive() external payable {}
// Fallback function is called when msg.data is not empty
fallback() external payable {}
//查询以太坊余额
function getBalance() public view returns (uint256) {
return address(this).balance;
}
}
ethereum eth transfer
最新推荐文章于 2025-06-10 13:16:20 发布