solidity 以太坊(Ether) 单位(很基础)

一个字面常数可以带一个后缀 wei, gwei 或 ether 来指定一个以太坊的数量, 其中没有后缀的以太数字被认为单位是wei。

在以太坊和许多其他基于以太坊的区块链系统中,以太币(Ether)是网络中的主要加密货币。

以太可以被划分为更小的单位,这些单位使得交易可以以不同的粒度进行。

这些单位从最小的wei到最大的ether,其中每个单位都比前一个单位大1,000,000,000(十亿)倍。

这些单位的使用允许用户在进行交易和智能合约操作时指定非常精确的金额。

  • Wei:

是以太币的最小单位,1 ether 等于 10 ** 18 wei。

  • Gwei:

也称为 gigawei, 是 wei 的更大的单位,1 ether 等于 10 ** 9 wei。

由于许多交易费用都是以 gwei 为单位衡量的,因此这个单位在交易费(gas费)时尤其常见。

  • Ether

是这些单位中最大的,通常用于表示在普通交易和投资中转移的较大金额。

基础声明,比较
复制代码
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract My {
    uint256 a = 1 ether;
    uint256 b = 10**9 * 1 gwei;
    uint256 c = 10**18 * 1 wei;

    function name() public view returns (bool) {
        return b == c;
    }
}

接收以太币例子

复制代码
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract My {
    uint256 a = 1 ether;
    uint256 b = 10**9 * 1 gwei;
    uint256 c = 10**18 * 1 wei;

    function name() public view returns (bool) {
        return b == c;
    }

    function name(address _addr) public payable {
        address payable ap = payable(_addr);
        require(msg.value == 1 ether, "message");
        ap.transfer(msg.value);
    }

    function name2(address _addr) public payable {
        address payable ap = payable(_addr);
        require(msg.value == 10 gwei, "message");
        ap.transfer(msg.value);
    }

    function name3(address _addr) public payable {
        address payable ap = payable(_addr);
        require(msg.value == 10 wei, "message");
        ap.transfer(msg.value);
    }

    function name4(address _addr) public payable {
        address payable ap = payable(_addr);
        require(msg.value == 0.001 ether, "message");
        ap.transfer(msg.value);
    }
}
相关推荐
币圈菜头1 小时前
GAEA Carbon-Silicon Symbiotism NFT 解析:它在系统中扮演的角色,以及与空投权重的关系
人工智能·web3·去中心化·区块链
Web3VentureView2 小时前
Synbo与Superpool达成合作:共建链上募资早期入口
网络·金融·web3·区块链
fuzamei8882 小时前
Chain33 智能账户:账户抽象的务实突破,零成本赋能下一代 Web3 体验
web3·区块链
upper202011 小时前
【炒股学习】集合竞价
学习·区块链
fuzamei88819 小时前
Chain33 Orderbook:去中心化订单簿的创新架构与实现
架构·去中心化·区块链
Biteagle1 天前
P2MS:比特币的多重签名机制与比特鹰的技术解析
区块链·智能合约
hopsky1 天前
区块链中数据的完整处理流程
区块链
Biteagle2 天前
P2TR :比特币的「终极脚本方案」与比特鹰的技术解析
区块链
大千AI助手2 天前
程序合约:形式化验证中的规范与实现框架
分布式·区块链·软件开发·形式化验证·大千ai助手·程序合约·contracts
旺仔Sec2 天前
2025年安徽省职业院校技能大赛(高职组)区块链技术应用赛项样题任务书
区块链·智能合约