2013-05-03 2 views
-3

Как преобразовать типы данных из c в go и наоборот?Расширение языка программирования программирования с помощью C, преобразование типов данных

Например, у меня есть функция, которая возвращает массив целых чисел:

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

Как я могу преобразовать его нарезать или массив?

--UPDATE--

В Go файл, я могу использовать C.GoString(C.Test()) преобразовать тип возвращаемого значения Go String. Я ищу полный документ для этих функций.

+0

Просьба сделать код, который вы хотите, и мы поможем вам с конкретными ошибками/проблемами. Ваш пример не является действительным (или разумным) кодом C (вы не можете вернуть такой массив в C). –

+1

@ AskBjørnHansen: на самом деле, вы можете. Литерал переживет эту функцию. –

+1

'C.GoString' выдает строку из строки C, копируя данные. Что еще сказать? –

ответ

7

Вы должны взглянуть на http://golang.org/cmd/cgo/. Вот пример использования http://golang.org/misc/cgo/gmp/gmp.go

+0

Это прекрасно, но мне нужны некоторые учебники или документы, между тем у меня нет времени изучать исходный код: | –

+3

@ zero.zero.seven http://golang.org/doc/articles/c_go_cgo.html - это учебник. –

+0

где doc для таких функций, как C.GoString? –

Смежные вопросы