点击链接查看我的个人博客,文章更全更详细
站在巨人的肩膀上写代码
c/c++作为老大哥,积累了很多优秀的库。Go语言提供了CGO工具支持C语言函数调用,同时也可以将Go语言导出C动态库给其他语言使用。
-
Go语言如何导出C语言动态库
-
CGO在使用C/C++资源的时候一般有三种形式:直接使用源码;链接静态库;链接动态库
-
编译和链接参数
这里只做简单的介绍,有兴趣可以深入研究~
1. 调用C语言库以经典的hello world为例
package main //#include2. 嵌入C语言函数import "C" func main() { C.puts(C.CString("Hello, Worldn")) }
package main
import "C"
func main() {
v := 42
C.printint(C.int(v))
}
package main
import "C"
import "fmt"
func main() {
v0, err0 := C.div(2, 1)
fmt.Println(v0, err0)
v1, err1 := C.div(2, 0)
fmt.Println(v1, err1)
}



