OK,我刚开始学C语言,看了很多人建议用MinGW做编译器。我下载、安装并正确设置(我认为)并设置路径。一切似乎都很好。 我的问题是当我做这样的事情时,我找不到从 CMD 运行 C 文件的方法:
C:\>gcc a\c1.c
CMD 上没有任何显示
在 c1.c 文件中我有以下内容:
#include <stdio.h>
int main(void)
{
printf("this is a test.\n");
return 0;
}
我试过 tcc 编译器并以这种方式使用它:
C:\>tcc a\c1.c
输出如下:
this is a test.
我怎样才能让 MinGW 以同样的方式输出? 我查看了 MinGW/gcc 手册和 HowTos,但找不到做同样事情的方法。
最佳答案
gcc filename.c
编译并链接您的文件——但它不会像您预期的那样将可执行文件写入 hello.exe
(当然它不会'执行它)。
而且,作为基于 Unix 的工具的惯例,gcc
通常不会打印任何内容,除非出现错误。它完成并且你得到一个新的 C:\>
提示这一事实告诉你它成功了。
在 Unix 上,由于历史原因,可执行文件的默认名称是 a.out
(它代表“汇编程序输出”)。对于 MinGW,默认名称是 a.exe
,因为 Windows 要求可执行文件有 .exe
后缀。
所以运行gcc a\c1.c
后,可以运行a.exe
或.\a.exe
来运行程序.
或者,更好的是,正如 Doug 所建议的,您可以使用 -o
选项来指定生成的可执行文件的名称。
(如果您只想运行编译器并生成目标文件而不是可执行文件,请使用 gcc -c
。)
请注意,此行为(除非出现问题,否则不打印任何内容,将可执行文件命名为 a.out
或 a.exe
等)由 gcc 定义特别是编译器。这不是C语言的特性。其他 C 编译器的行为可能类似也可能不同。
关于c - 如何使用 MINGW 运行 C 代码/文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7936940/