我使用exec.Command和exec.Start()执行C可执行文件。 我的C可执行文件在当前目录中,这是我的代码

当我运行此代码时,这是我得到的输出

我的C hello world程序是

C代码使用gcc版本4.8.2编译,可执行文件是a.out。

C可执行文件a.out是一个简单的hello world程序,我得到了正确的输出,但是我不明白为什么exec.Wait()退出时的状态码为11,而不是0。

当我在linux终端上运行时,可执行文件('a.out')正常运行,没有任何故障或错误


我从github这里得到了答案

它返回11,因为输出长度为11,并且在hello world程序中没有return语句。 因此,main在结束时从AX寄存器返回。