如何将错误消息从 C 传递到 Go?

我想将错误消息从 C 代码传递到 Go 堆栈。我如何使用输出参数来完成此任务?

如果有人能帮助我,我真的很感激。


慕斯王
浏览 82回答 1
1回答

MMTTMM

任何 C 函数(甚至 void 函数)都可以在多重赋值上下文中调用,以检索返回值(如果有)和 C errno 变量作为错误(如果函数返回 void,则使用 _ 跳过结果值)。然后在你的 C 代码中你所要做的就是设置“全局”errno 变量。package main// #include <errno.h>// int fortytwo()// {//&nbsp; &nbsp; &nbsp; errno = ENOENT;//&nbsp; &nbsp; &nbsp; return 42;// }import "C"import "fmt"func main() {&nbsp; &nbsp; n, err = C.fortytwo()}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go