【发布时间】:2017-08-01 13:55:28
【问题描述】:
我是 golang 新手,并试图找出将字节块转换为正确结构的正确方法。所有结构都以两个字节开始,这些字节指示剩余字节的布局。在 C 语言中,我将指向内存块的开头并将其转换为仅包含这两个字节(下面的 X)的简单结构,但在这里我得到一个无效的类型断言。我可能会在这里为您提供任何帮助。
package main
import (
"fmt"
)
type A struct {
tag byte
ver byte
data1 int
data2 int
data3 int
}
type B struct {
tag byte
ver byte
data1 float32
}
type X struct {
tag byte
ver byte
}
func main() {
var a A
a.tag = 1
a.ver = 1
x := a.(X)
fmt.Printf("%d,%d", x.tag, x.ver)
}
【问题讨论】:
标签: go