gpt4 book ai didi

arrays - 如何在 crypto.rand.Read 中使用 [20]bytes 类型作为参数而不是 []bytes?

转载 作者:IT王子 更新时间:2023-10-29 00:39:33 25 4
gpt4 key购买 nike

我想将随机值读入字节数组。它是这样工作的:

hash = make([]byte,20)
_, err := rand.Read(hash)

但是我想做类似的事情

var hash [20]byte
_, err := rand.Read(hash)

结果是

cannot use hash (type [20]byte) as type []byte in argument to "crypto/rand".Read

如何将 [20]byte 与 rand.Read 一起使用?

最佳答案

要创建一个由数组支持的 slice ,您可以编写例如hash[i:j](返回从索引 i 到索引 j-1 的 slice )。在你的情况下,你可以写:

var hash [20]byte
_, err := rand.Read(hash[0:20])

或者,因为默认端点是 0 和数组长度:

var hash [20]byte
_, err := rand.Read(hash[:])

关于arrays - 如何在 crypto.rand.Read 中使用 [20]bytes 类型作为参数而不是 []bytes?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28425866/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com