区块链solidity学习笔记(二)

1,获取字节长度

pragma solidity ^0.4.0;
contract bytestest{
     
    bytes1 num1=123; // bytes1一个字节占8位二进制位,bytes1=uint8
    bytes1 num2=0x7a; // 0111 1010
    bytes1 public num3=0x7a; //加入public后 系统自动生成get方法
    function getlength() view public returns(uint){
     
        return num1.length;
    }
}

2,动态数组

pragma solidity ^0.4.0;
contract dynimicbytes{
     
    bytes public name=new bytes(2); // 定义2个字节的动态数组
    function initname(){
      // 动态数组赋值
        name[0]=0x7a;
        name[1]=0x68;
    }
    function getlength() view public returns(uint){
      // 获取动态数组长度
        return name.length;  
    }
    function changename(){
      // name[0]重新赋值
        name[0]=0x88;
    }
    function changelength(){
      // 更改动态数组长度
        name.length=5;
    }
    function pushtest(){
      // push方法 向动态数组后添加数据
        name.push(0x99);
    }
}

你可能感兴趣的:(solidity,区块链)