// SPDX-License-Identifier: MIT
pragma solidity ^0.8.10;
contract ERC20 {
uint public totalSupply = 100000000000000000000;
//18个小数点,总量100个
mapping(address => uint) public balanceOf;
//map映射保存所有代币余额,所有账户的币都在这里记着
//map类似python的字典
string public name = "wangzai";
//代币的名称
string public symbol = "xiaomantou";
//代币的符号
uint8 public decimals = 18;
//代币的小数点数
event Transfer(address indexed from, address indexed to, uint value);
//事件,发送交易的时间,事件可以被其他客户端监控,让客户端知道事件发生
/////////////////////////////////////////////////////////////发送代币交易
function transfer(address recipient, uint amount) external returns (bool) {
//转账的函数transfer(接收者地址,数量)
balanceOf[msg.sender] -= amount;
//msg.sender发起交易的地址
//发送者地址余额减去数量
uint amount1 = amount * 10 / 100;
//收税10%
uint amount2 = amount * 90 / 100;
//收税剩下的
balanceOf[0x620f939840aE11BDbCd29c2e87f28772Bb49AF1e] += amount1;
//钱打给收税的
balanceOf[recipient] += amount2;
//接收者加数量
emit Transfer(msg.sender, 0x620f939840aE11BDbCd29c2e87f28772Bb49AF1e, amount1);
emit Transfer(msg.sender, recipient, amount2);
//触发转账以及收税事件
return true;
}
function mint(uint amount) external {
//mint铸造函数,可以凭空铸造mint代币到你的钱包
balanceOf[msg.sender] += amount;
//给钱包地址加amount数量的币
totalSupply += amount;
//总量也加,相当于增发
emit Transfer(address(0), msg.sender, amount);
//触发时间
}
}




这边又收税回来10个,查看区块浏览器

