使用C语言扩展Go编程语言,转换数据类型。

huangapple go评论85阅读模式
英文:

Extend Go Programming Language with C, Converting Data Types

问题

如何在C和Go之间转换数据类型?

例如,我有一个返回整数数组的函数:

char* Test()
{
    char*msg = "Hello, Go";
    return msg;
}

我该如何将其转换为切片或数组?

--更新--

在Go文件中,我可以使用C.GoString(C.Test())将返回类型转换为Go字符串。我正在寻找这些函数的完整文档。

英文:

How can I convert data types from c to go and vice-versa?

For example, I have a function that returns an array of integers:

char* Test()
{
    char*msg = "Hello, Go";
    return msg;
}

How can I convert it to slice or array?

--UPDATE--

In Go file, I can use C.GoString(C.Test()) to convert the return type to Go String. I'm looking for a complete doc for these functions.

答案1

得分: 7

你应该看一下http://golang.org/cmd/cgo/。这里有一个使用它的例子http://golang.org/misc/cgo/gmp/gmp.go

英文:

You should have a look at http://golang.org/cmd/cgo/ . Here's an example using it http://golang.org/misc/cgo/gmp/gmp.go

huangapple
  • 本文由 发表于 2013年5月3日 22:40:12
  • 转载请务必保留本文链接:https://go.coder-hub.com/16361546.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定