最简单,最安全的方法是将其复制到切片中,而不是专门复制到
[1024]byte
mySlice := C.GoBytes(unsafe.Pointer(&C.my_buff), C.BUFF_SIZE)
要直接使用内存而不进行复制,可以通过来“广播”
unsafe.Pointer。
mySlice := (*[1 << 30]byte)(unsafe.Pointer(&C.my_buf))[:int(C.BUFF_SIZE):int(C.BUFF_SIZE)]// or for an array if BUFF_SIZE is a constantmyArray := *(*[C.BUFF_SIZE]byte)(unsafe.Pointer(&C.my_buf))


![如何将[1024] C.char转换为[1024] byte 如何将[1024] C.char转换为[1024] byte](http://www.mshxw.com/aiimages/31/452323.png)
