阅读(2176) (10)

字节数组

2022-05-11 14:21:31 更新

固定大小的字节数组

值类型bytes1bytes2bytes3, ...bytes32 包含从 1 到最多 32 的字节序列。

运营商:

  • 比较:<=<==!=>=>(计算为bool

  • 位运算符:&|^(按位异或),~(按位否定)

  • 移位运算符:(<<左移)、>>(右移)

  • 索引访问:如果x是 type bytesI,则x[k]for返回第th 字节(只读)。0 <= k < Ik

移位运算符使用无符号整数类型作为右操作数(但返回左操作数的类型),它表示要移位的位数。按有符号类型移位会产生编译错误。

成员:

  • .length产生固定长度的字节数组(只读)。

笔记

该类型bytes1[]是一个字节数组,但由于填充规则,它为每个元素浪费了 31 个字节的空间(存储中除外)。最好改用bytes 类型。

笔记

在 0.8.0 版之前,byte曾经是bytes1.

动态大小的字节数组

bytes

动态大小的字节数组,请参阅Arrays。不是价值类型!

string

动态大小的 UTF-8 编码字符串,请参阅数组。不是价值类型!