gpt4 book ai didi

go - 如何将单个字符转换为单个字节?

转载 作者:数据小太阳 更新时间:2023-10-29 03:31:45 25 4
gpt4 key购买 nike

我正在尝试检查一个给定字符是否存在于一个字节中:

//readBuf: []byte
//n: int
for i:=0;i<n;i++{
if readBuf[i]=="?"{
return true
}
}

“?”是字符串类型,所以我得到一个错误,因为 readBuf[i] 是一个字节。我怎样才能转换“?”到一个字节以便能够将它与 readBuf[i] 进行比较?

似乎 []byte("?")[0] 正在工作(将 1 元素字符串转换为 1 元素字节数组,提取第一个值),但我确信这不是正确的方法这样做。

最佳答案

rune literal '?' 是问号 rune 的无类型整数值。

使用bytes.ContainsRune :

if bytes.ContainsRune(readBuf[:n], '?') {
return true
}

因为字符?在UTF-8中被编码为单字节,所以测试也可以写成:

for _, b := range readBuf[:n] {
if b =='?'{
return true
}
}

关于go - 如何将单个字符转换为单个字节?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46292602/

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