• solidity数据类型


    1.Bool类型

    取值:true/false

      运算符:!  && || == !=

    2.Integer整型

    uint8-uint256

    int8-int256

      uint == uint256

      int == int256

    运算符:<   <=   ==

        位运算:& |  ^(异或)  ~(位取反)

        算数运算:+,-,* ,/,%,**,<<,>>

       constant 关键字的函数不会修改状态变量的值

    使用var,var a = 100; 【a为uint8,因为uint8足够存储100】 将第一次复制的类型作为a的类型。

      function testUint() constant returns(uint8){
          var a=100;
          return a;
      }

      因此,对于下面的代码是错误的:i初始化时为uint8

      function add() constant returns(uint){
        uint a=0;
        for(var i=0;i<=256;i++){
          a+=1;
        }
        return a;
      }

    3. address地址类型【钱包地址】

      地址长度为20字节,即160bit,40位16进制数。因此可以使用uint160

    pragma solidity ^0.4.4;
    
    contract AddrTest{
      address _owner;
      function setOwner(){
        _owner = 0x4def79be8ccf285bbd6d59c6e3f6f6680d150d1d;
      }
    
      function getOwner()constant returns(address){
        return _owner;
      }

      function getOwner()constant returns(uint160){
        return uint160(_owner);   //uint160: 444932772883299463689308144911204261155420048669
      }

    
    }

      address和uint160可以相互转化;

    msg.sender:钱包地址

    msg.sender是可以变的,他是Account地址

      

  • 相关阅读:
    MYSQL常用DDL
    MYSQL字符串与数字比较出现的异常
    目 录
    动态规划
    初级排序和高级排序
    ACMer计划2(非原创)
    1、常用C++STL集合
    1.2常见C++STL 映射表
    「CEOI2021」 Newspapers 题解 翻译
    Border Theory 学习笔记
  • 原文地址:https://www.cnblogs.com/zhuxiang1633/p/9466270.html
Copyright © 2020-2023  润新知