pragma solidity ^0.4.0;
//建立乙個基礎合約,用於指定某些操作只能由合約擁有者-執行
contract owned
//宣告乙個修改器,證明只有合約擁有者才能執行某些操作
modifier onlyownerelse
}//此函式的功能是把合約轉讓給指定使用者
function transferowner(address newowner) public onlyowner
}//建立代幣合約
contract ztoken is owned
balanceof[owner] = initalsupply;
name = _name;
symbol = _symbol;
decimals = _decimals;
totalsupply = initalsupply;
}//發行貨幣的機制,本次代幣的機制為向指定位址傳送代幣
function minttoken(address target,uint mintedamount) onlyownerelse
}//實現賬戶的凍結與解凍
function freezeamount(address target,bool _bool) onlyowner
}//實現賬戶之間代幣的轉移
function transfer(address _to,uint _value)
//檢測接收者的賬戶餘額是否溢位
if(balanceof[_to] + _value < balanceof[_to])
//轉賬
balanceof[_to] += _value;
balanceof[msg.sender] -= _value;
}//設定代幣的買賣**
function setprice(uint newsellprice,uint newbuyprice) onlyowner
//實現賣操作
function sell(uint amount) returns(uint revenue)
//檢測餘額是否足夠
if(balanceof[msg.sender] < amount)
//實現賣操作
balanceof[owner] += amount;
balanceof[msg.sender] -= amount;
//通過當前**計算賣家得到的以太幣數量
revenue = amount * sellprice;
//轉賬以太幣給賣家
if(msg.sender.send(revenue))else
}//實現買的操作
function buy() payable returns(uint amount)
//根據使用者傳送的以太幣計算出要買的代幣的數量
amount = msg.value /buyprice;
//檢測合約擁有者的代幣是否足夠
if(balanceof[owner] < amount)
//向合約擁有者傳送代幣
if(!owner.send(msg.value))
//代幣變化
balanceof[owner] -= amount;
balanceof[msg.sender] += amount;
return amount;}}
在以太坊上部署乙個代幣,通常都要首先建立乙個基礎合約,基礎合約的作用是在代幣合約中某些操作只能由代幣合約擁有者才能進行。在代幣合約中首先使用建構函式來初始化代幣的相關引數,然後分別設計了發幣機制函式、賬戶凍結與解凍函式、賬戶之間代幣的相互轉移函式、代幣的買賣操作函式。如果要賦予代幣更多的功能特點,可以在這些函式的基礎上去新增擴充套件,特別是發幣機制能體現代幣的價值所在。
以太坊智慧型合約實現代幣空投
本文將介紹如何在以太坊智慧型合約中實現代幣的空投。區塊鏈世界中所謂空投 airdrop 就是免費給你的區塊鏈位址 公鑰 傳送代幣。代幣空投的方式層出不窮,有手工打幣空投的,也有向代幣合約轉賬進行空投的,還可以無需轉賬,只需要將代幣合約位址新增到imtoken錢包中去,就可以實現代幣空投。本文將介紹這...
智慧型合約 以太坊
智慧型合約是執行在可複製 共享的賬本上的電腦程式,可以處理資訊,接收 儲存和傳送價值。2.1 什麼是以太坊 以太坊 ethereum 是乙個分布式計算機,有許多的節點,其中的每乙個節點都會執行智慧型合約,然後把結果存在區塊鏈上。由於整個網路是分布式的,且應用就是乙個個的狀態組成,儲存了狀態就有了服務...
以太坊智慧型合約中實現代幣空投
本文將介紹如何在以太坊智慧型合約中實現代幣的空投。區塊鏈世界中所謂空投 airdrop 就是免費給你的區塊鏈位址 公鑰 傳送代幣。代幣空投的方式層出不窮,有手工打幣空投的,也有向代幣合約轉賬進行空投的,還可以無需轉賬,只需要將代幣合約位址新增到imtoken錢包中去,就可以實現代幣空投。本文將介紹這...