我试图在C中重写一些Go代码主要是作为一种学习经历,但是我遇到了一个我无法在其他地方找到答案的问题。
我正在尝试运行以下代码:
package conv
/*
#include <stdio.h>
int** ConvertStringToArray(char* str){
printf("%s\n", str);
}
*/
import (
"C"
"unsafe"
)
func ToArrayGo(str string) [][]int {
return nil // TODO
}
func ToArrayC(str string) [][]int {
C.ConvertStringToArray(C.CString(str))
return nil // TODO
}
如果我注释掉不安全的导入它就可以了,但是当我添加它时,我使用go install / test命令得到以下错误:
37:错误:&#39; ConvertStringToArray&#39;未申报(首次使用此功能)
每当我尝试导入任何其他库时,情况也是如此。任何帮助将不胜感激,甚至重定向到相关问题(我已经看过,但可能已经错过了一个)。
谢谢, 戴夫
答案 0 :(得分:1)
import "C"
应该是自己的一行,并且第一次导入。那你可以
import (
"unsafe"
)
作为下一行。