我正在尝试使用unsafe库在 Go 中将uint32转换为字节数组(4 个字节):
h := (uint32)(((fh.year*100+fh.month)*100+fh.day)*100 + fh.h)
a := make([]byte, unsafe.Sizeof(h))
copy(a, *(*[]byte)(unsafe.Pointer(&h)))
前两行是正确的,但随后在复制调用中出现运行时错误(意外故障地址)。
下一步是调用Write
_, err = fi.Write(a)
将 4 个字节写入文件。
我发现了其他类似主题的问题,但没有一个工作代码。我也知道不安全是不安全的。
任何帮助将不胜感激。
相关分类