Pointers 将切片转换为数组指针
我有一些代码Pointers 将切片转换为数组指针,pointers,opengl,go,slice,Pointers,Opengl,Go,Slice,我有一些代码 var buffers [2]uint32 gl.GenBuffers(2, /* What here! */) gl.GenBuffers()要求输入一个int32和一个*uint32。在C语言中,您可以传递一个静态数组或指向它的指针,这一切都很好,但在Golang中,切片不起作用 我可以想到的两种方法是分配一个动态数组,或者将切片转换为指针数组 糟糕的是我也不知道怎么做。。。 我尝试了新的,但它并不像malloc那样工作。。。 我被难住了,任何帮助都会受到极大的欢迎 写: v
var buffers [2]uint32
gl.GenBuffers(2, /* What here! */)
gl.GenBuffers()要求输入一个int32和一个*uint32。在C语言中,您可以传递一个静态数组或指向它的指针,这一切都很好,但在Golang中,切片不起作用
我可以想到的两种方法是分配一个动态数组,或者将切片转换为指针数组
糟糕的是我也不知道怎么做。。。
我尝试了新的,但它并不像malloc那样工作。。。
我被难住了,任何帮助都会受到极大的欢迎 写:
var buffers [2]uint32
gl.GenBuffers(int32(len(buffers)), &buffers[0])
比如说,
package main
import (
"fmt"
)
func main() {
var buffers [2]uint32
fmt.Printf("%d %p\n", int32(len(buffers)), &buffers[0])
fmt.Printf("%T %T\n", int32(len(buffers)), &buffers[0])
}
游乐场:
输出:
2 0x10410020
int32 *uint32