当从C调用go程序时,它是编译的还是解释的



我做了一个C程序。我制作了一个定义了go函数的go文件。在C程序中,我调用了go函数。从C调用go是编译的还是解释的?

我做了一个C程序。我制作了一个定义了go函数的go文件。在C程序中,我称go函数为

你做了一个调用C函数的Go程序(另一种方法还不可能。)然后你显然又从C调用Go函数了,这有点奇怪,大多数时候都没有多大意义。看见https://stackoverflow.com/a/6147097/532430.

我假设您使用gccgo来编译程序。因为如果你使用Go的gc,那么你的程序是用什么语言编写的就不会有任何混淆

从C调用go是编译的还是解释的?

它是经过编译的。gccgo是GCC的Go前端。GCC代表GNU编译器集合。

它总是经过编译的。没有编译,C永远不会运行函数。

在您的程序中,当您第一次调用go函数时,编译器将生成函数调用所需的代码、函数参数的空间、存储函数参数类型的详细信息等。如果按照编译器标准,一切都是正确的,则创建对象文件,此外还有其他过程,如链接和all。因此,基本上你不能说它是"从C编译的or调用的go被解释了吗?",它是一系列协同工作以使程序运行的过程。

最新更新