solidity bytes 智能合约开发知识浅学(五点一)bytes基本概念

2020-10-23 14:28:31 浏览数 (1)

环境说明: Ide:在线remix Solidity IDE 语言:solidity solidity 版本号:0.4.20 Tip:如果一点都不懂的建议从头开始看 运行结果截图我不赘述,所有合约代码均通过个人检测。请按照标准进行操作,如出问题检测是否网络连得上外网,且操作按照第一节内容类似操作;由于版本更新,可能会出现不同,但该教材代码均适用于在0.4.20 版本使用

示例代码:

代码语言:javascript复制
pragma solidity ^0.4.20;
contract Test{
    bytes1 bt1 = "a";  //  byte  等价 bytes1
    bytes2 bt2 = "ab";
    function getbBytes() public constant returns(bytes1,bytes2){
        return (bt1,bt2);
    }
    function getbBytesLength() public constant returns(uint,uint){
        return (bt1.length,bt2.length);
    }
}

bytes1 后面数字1是表示1字节 bytes默认等于bytes1 Bytes2 后面数字2是表示2字节 Bytes3 后面数字3是表示3字节 bytes4 后面数字4是表示4字节

代码解析: bytes1 bt1 = “a”; bytes2 bt2 = “ab”;

声明定义两个bytes变量bt1与bt2,值分别为a和ab

function getbBytes() public constant returns(bytes1,bytes2):

名为getbBytes的函数返回两个值,类型分别是bytes1,bytes2,solidity与golang一样可返回多个值为函数返回值

return (bt1,bt2);

返回两值,注意在这里返回的值将会以ASCII表示下一节将会说类型转换

function getbBytesLength() public constant returns(uint,uint):

返回两bytes类型长度使用length属性: return (bt1.length,bt2.length);

0 人点赞