Skip to content

Instantly share code, notes, and snippets.

@nasitra
Created October 31, 2015 02:38
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save nasitra/98bb59421be49a518c4a to your computer and use it in GitHub Desktop.
Save nasitra/98bb59421be49a518c4a to your computer and use it in GitHub Desktop.
Convert 'C' array to golang slice
func carray2slice(array *C.int, len int) []C.int {
var list []C.int
sliceHeader := (*reflect.SliceHeader)((unsafe.Pointer(&list)))
sliceHeader.Cap = len
sliceHeader.Len = len
sliceHeader.Data = uintptr(unsafe.Pointer(array))
return list
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment