千家信息网

Solidity字符串拼接怎么实现

发表于:2024-10-19 作者:千家信息网编辑
千家信息网最后更新 2024年10月19日,这篇文章主要介绍"Solidity字符串拼接怎么实现",在日常操作中,相信很多人在Solidity字符串拼接怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Sol
千家信息网最后更新 2024年10月19日Solidity字符串拼接怎么实现

这篇文章主要介绍"Solidity字符串拼接怎么实现",在日常操作中,相信很多人在Solidity字符串拼接怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Solidity字符串拼接怎么实现"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

尝试

我们先用绝大部分语言都通用的连接符 +. 来尝试着修改代码:

//pragma关键字:版本申明。//用来指示编译器将代码编译成特定版本,以免引起兼容性问题//此处不支持0.4.0之前的编译器,也不支持0.5.0之后的编译器(条件为 ^)pragma solidity ^0.4.0;//contract关键字:合约申明//和Java、PHP中的class类似//此处是申明一个名为Hello的合约contract Hello {    string str="Hello ";    //public: 函数访问属性(后续文章为详细阐述)    //returns (string): 定义返回值类型为string    function say(string name) public returns (string) {        return str + name;    }}

运行 node deploy.js 部署脚本后,抛出了一个异常:

TypeError: Operator + not compatible with types string storage ref and string memory
return str + name;

我们将其修改为 . 并尝试部署后,也抛出一个异常:

TypeError: Member "name" not found or not visible after argument-dependent lookup in string storage ref return str . name;

说明在智能合约里,+. 都不是连接符。 通过查阅 Solidity 官方文档,我们发现 Solidity 语言并不提供字符串连接符的语法:

到此,关于"Solidity字符串拼接怎么实现"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

0