我正在尝试在我的Golang应用程序中使用。我的代码如下:C.freepackage mainimport ( "fmt" "unsafe")// #include <stdlib.h>import ( "C")//export FreeMemoryfunc FreeMemory(pointer *int64) { C.free(unsafe.Pointer(pointer))}我做了一些搜索,我知道错误是因为我没有包括在内,但我有。stdlib.h这是我的构建命令:。我在构建后得到的错误是:go build --buildmode=c-shared -o main.dllcould not determine kind of name for C.free我的操作系统是视窗 10谢谢
1 回答

牛魔王的故事
TA贡献1830条经验 获得超3个赞
如果导入“C”紧跟在注释之前,则在编译包的 C 部分时,该注释(称为前导码)将用作标头。例如:
// #include <stdio.h>
// #include <errno.h>
import "C"
package main
import "unsafe"
// #include <stdlib.h>
import "C"
//export FreeMemory
func FreeMemory(pointer *int64) {
C.free(unsafe.Pointer(pointer))
}
func main() {}
- 1 回答
- 0 关注
- 133 浏览
添加回答
举报
0/150
提交
取消