首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

区块链开发 Solidity智能合约:类型,固定大小字节数组,动态字节数组

与或短路问题

uint, int, address 类型

uint -> uint256 无符号

int -> int256 有符号

无符号:只能存储大于等于0的数

有符号:分正负

uint8 uint16 uint24 uint32 ….. uint256

addresss -> uint160

// 0xF055775eBD516e7419ae486C1d50C682d4170645

int8 int16 int24 int32 int40 … int256

uint16 0000 0000 0000 0000 ~ 1111 1111 1111 1111

constant 和 view代表只读,不可写

关系运算符

位运算符

算术运算符 和 移位

两个相等 的 超大数 相减,会自动检测抵消,不会溢出.

固定大小字节数组

固定大小字节数组

byte 一个字节

byte 等价于 bytes1 一个字节

bytes1 bytes2 bytes3 bytes4 bytes5 bytes6…bytes32

address 20 160

一个byte 8位

liyuechun

这个字符串 十六进制为: 0x6c697975656368756e

案例:

注意string 类型不支持索引 和 length方法

固定大小字节数组 如何调用length

一个英文字母或者一个数字代表一个字节

固定大小字节数组的 内容 装到 较大的固定大小字节数组 末尾自动添

固定大小字节数组的 内容 装到 较小的固定大小字节数组 自动截断

固定大小字节数组有两个不可变:

长度不可变 ,name.length = 30,报错

内容不可变,name[2] = 0x89报错

固定大小字节数组 关系运算

固定大小字节数组 位运算

可变大小字节数组 bytes

bytes 可变大小字节数组

string可以直接转换为bytes,通过bytes 的length方法可以获取到字节长度

小练习:写一个方法,这个方法有一个字符串参数,通过这个函数返回传入进去的字符串长度

小练习:写一个方法,这个方法有一个字符串参数,通过这个函数返回传入进去的字符串长度

注意: 一个汉字 是3个字节

可变大小字节数组 内容可修改

固定大小字节数组:

1.长度不可变

2.内容不可变

可变大小字节数组:

1.长度可变

2.内容可变

可变大小字节数组 的 新增字节 和 清空

日后随着 学习打怪的不断深入,会解锁其他的高级教程。

期待 吗? 那就关注下面 公众号 随时锁定区块链开发学习教程进度 :)

区块链开发技术共享姜富耀 孔壹

`

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180225G0X8N100?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券