solidity string类型容量大小


前言

今天有小伙伴问solidity string类型容量大小是多少?他想传一个动态的字符串值,其容量大小不可控,在网上也没找到资料。


bytes和string数据类型

bytes: 动态长度的字节数组,参见数组(Arrays)。非值类型。

string: 动态长度的UTF-8编码的字符类型,参见数组(Arrays)。非值类型[valueType]。

字节数组(byte arrays)
定长字节数组(Fixed-size byte arrays)
bytes1, … ,bytes32,允许值以步长1递增。byte默认表示byte1。

总结

使用原则是:

  • bytes用来存储任意长度的字节数据,可以存储小图片、小音频等文件,大的文件一般不直接存储在链上,在链上只保存大文件的hash码, bytes一般也用来存储字符串,因为更节省空间。
  • string用来存储任意长度的UTF-8编码的字符串数据。如果长度可以确定,尽量使用定长的如byte1到byte32中的一个,因为这样更省空间。
  • 在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/ws327443752/article/details/123702346