编程网今天将给大家带来《golang - 将布尔值转换为字节》,感兴趣的朋友请继续看下去吧!以下内容将会涉及到等等知识点,如果你是正在学习Golang或者已经是大佬级别了,都非常欢迎也希望大家都能给
编程网今天将给大家带来《golang - 将布尔值转换为字节》,感兴趣的朋友请继续看下去吧!以下内容将会涉及到等等知识点,如果你是正在学习Golang或者已经是大佬级别了,都非常欢迎也希望大家都能给我建议评论哈~希望能帮助到大家!
问题内容我正在尝试将长度为 8 的 bool 数组转换为字节。有谁知道怎么做吗?
mei := [8]bool{true, true, true, true, false, false, false, false}
myvar := ConvertToByte(mei)
迭代各个位,边移动边设置。
以下是最高有效位位于数组中索引 0 处的情况的代码:
func converttouint8(mei [8]bool) uint8 {
var result uint8
for _, b := range mei {
result <<= 1
if b {
result |= 1
}
}
return result
}
mei := [8]bool{true, true, true, true, false, false, false, false}
myvar := converttouint8(mei)
fmt.printf("%b\n", myvar) // prints 11110000
以下是最低有效位位于数组中索引 0 处的情况的代码:
func converttouint8(mei [8]bool) uint8 {
var result uint8
for _, b := range mei {
result >>= 1
if b {
result |= 0b10000000
}
}
return result
}
mei := [8]bool{true, true, true, true, false, false, false, false}
myvar := converttouint8(mei)
fmt.printf("%08b\n", myvar) // prints 00001111
func ConvertToByte(bits [8]bool) byte {
var b byte
for _, bit := range bits {
b <<= 1
if bit {
b |= 1
}
}
return b
}
好了,本文到此结束,带大家了解了《Golang - 将布尔值转换为字节》,希望本文对你有所帮助!关注编程网公众号,给大家分享更多Golang知识!
--结束END--
本文标题: Golang - 将布尔值转换为字节
本文链接: https://www.lsjlt.com/news/596777.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-04-05
2024-04-05
2024-04-05
2024-04-04
2024-04-05
2024-04-05
2024-04-05
2024-04-05
2024-04-04
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0