You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Solidity静态调用中硬编码bytes类型数据?

Solidity静态调用硬编码bytes数据的正确写法

你之前的两种写法都存在问题:

  • bytes memory data = "0xfeaf968c";:这种写法会将字符串的每个字符单独编码为字节,最终得到的是0x30786665616639363863,和你实际需要的0xfeaf968c字节序列完全不符。
  • bytes memory data = \xfeaf968c";:这属于语法错误,Solidity不支持这种转义格式。

正确的硬编码方式是使用hex前缀直接指定十六进制字节数据:

bytes memory data = hex"feaf968c";

这样初始化得到的data就是你需要的0xfeaf968c字节序列,用于静态调用时即可正常运行。

内容的提问来源于stack exchange,提问作者Matt Jaf

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 23:50:33