我安装了GCC编译器来编写一些C代码,但是当我导航到目录并使用命令gcc -o helloworld helloworld.c
它在我的桌面上像正常一样生成可执行文件,但是当我运行它时,可执行文件关闭
我不认为代码是问题所在,但这是可能的。
#include <stdio.h>
int main()
{
printf("Hello world\n");
return 0;
}
答案 0 :(得分:5)
问题在于Windows对运行非GUI程序的支持不足。
在Windows下运行程序的常用方法是双击资源管理器窗口中的可执行文件。对于像你这样只打印到标准输出的程序,这将为程序的输出打开一个新窗口,程序将运行并快速完成,Windows将立即关闭窗口,可能在你有机会之前看到它。
一个常见的解决方法是在程序结束时添加一些内容,例如调用getchar()
,以使程序等待输入。
另一种解决方案是从命令提示符运行程序。然后它的输出将显示在当前窗口而不是临时窗口中,您将看到程序的输出,然后是新的提示。如果以这种方式运行,并且不需要添加getchar()
,并且会使程序在终止之前等待输入。
Windows操作系统强调GUI程序而不是使用纯文本输入和输出的程序。 C是在不同类型的环境中开发的(当然,实现C for Windows支持图形操作)。
答案 1 :(得分:3)
您的代码中遗漏了这一行/var/lib/jenkins/.ssh
。
getchar()
注意: 但是,在另一个答案中,这不是@Keith Thompson explains的解决方案。相反,这是一种方法,您可以强制程序退出,直到它在控制台窗口退出之前等待按键。
另一种方式(不使用#include <stdio.h>
int main()
{
printf("Hello world\n");
getchar();
return 0;
}
)
打开命令提示符(getchar()
),然后导航到程序目录并从那里运行程序。你会发现窗口不再消失,而是保持打开状态。