微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

无法使用 uint8 类型初始化数组

如何解决无法使用 uint8 类型初始化数组

我尝试使用以下表达式初始化数组:

const a: array[3,uint8] = [1,2,3]
echo repr(a)

编译器输出

Error: type mismatch: got <array[0..2,int]> but expected 'array[0..2,uint8]'

有没有传统的方法来做到这一点?

解决方法

您正在使用 int[] 表达式初始化 uint8[]。为了正确初始化它,您需要使用兼容的文字。

例如:

const a: array[3,uint8] = [1'u8,2,3]

通过使用 'u8 后缀将数组表达式的初始元素标记为 uint8,您可以使整个数组表达式成为 uint8[]。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。