布尔类型和逻辑与或非
pragma solidity ^0.4.5;
contract pcl {
int _a;
int _b;
bool _c;
function pcl() {
_a=1;
_b=2;
_c=true;
}
function luojifei() constant returns (bool){
return !_c;
}
function luojiyu() constant returns (bool){
return _a == _b && _c;
}
function luojihuo() constant returns (bool){
return _a==_b||_c;
}
}
与或非和异或
pragma solidity ^0.4.5;
contract pcl {
uint8 a;
uint8 b;
function pcl(){
a=2;
b=4;
}
function yu() constant returns (uint8){
return a&b;
}
function huo() constant returns (uint8){
return a|b;
}
function fei() constant returns (uint8){
return ~a;
}
function yihuo() constant returns (uint8){
return a^b;
}
}
整数类型的溢出
pragma solidity ^0.4.5;
contract pcl {
uint8 _a;
function pcl(uint8 a){
_a=a;
}
function set(uint8 a){
_a=a;
}
function get()constant returns (uint8){
return _a;
}
function testvar() constant returns (uint16){
uint16 a;
for (uint16 i=0 ; i<=255 ; i++){
a=i;
}
return a;
}
function testvar_1() constant returns (uint16){
uint16 a;
for (var i=0 ; i<=255 ; i++){
a=i;
}
return a;
}
}
合约中的this和balance
pragma solidity ^0.4.5;
contract pcl {
address _owner;
address _conAdd;
function pcl() {
_owner=msg.sender;
_conAdd=this;
}
function getBalance(string panduan) constant returns (uint){
if (keccak256(panduan)==keccak256("owner")){
return _owner.balance;
}else{
return _conAdd.balance;
}
}
function getAdd(string panduan) constant returns (address){
if (keccak256(panduan)==keccak256("owner")){
return _owner;
}else{
return _conAdd;
}
}
}
转账函数send和transfer
pragma solidity ^0.4.5;
contract pcl {
address _a;
function pcl() {
_a=0x70DCe49AF9485cF361d9B67a1B78777E624f4eA0;
}
function trans() payable{
_a.send(msg.value);
}
function tran_2() payable {
_a.transfer(msg.value);
}
}