我的C编译器在一秒钟之前工作并制作可执行文件,但我开始处理一个新的.c文件,突然它不再起作用了。我没有改变任何东西,我仍然使用相同的命令,Gitbash版本等。编译器仍然能够捕获错误,所以gcc工作,但在调用后:
gcc -std=c99 my_file.c
没有名为my_file.exe
的可执行文件。在线帮助网站建议安装其他软件来修复错误,但我很犹豫,因为一切都工作得很好,我不想用其他软件加剧这个问题。
答案 0 :(得分:3)
由于您尚未指定要输出的文件的名称,GCC将输出a.exe
。
如果您希望输出名为other,则必须使用-o
标志,例如:
gcc -std=c99 -o my_file.exe my_file.c
答案 1 :(得分:2)
在Unix上,该编译器命令将生成可执行文件a.out
。您可能会发现有一个带有默认名称的可执行文件 - 但我没有Windows来检查该名称是什么。猜测可能包括a.exe
,a_out.exe
,aout.exe
等。
获取my_file.exe
:
gcc -std=c99 -o my_file.exe my_file.c
答案 2 :(得分:1)
如果您没有指定输出-o
标记,则默认情况下会a.exe
(a.out
在其他平台上),
gcc -std=c99 my_file.c
如果有效,则生成
a.exe
我想你想要
gcc -std=c99 -o my_file.exe my_file.c