如何使用MINGW运行C代码/文件?

XO3*_*O39 3 c gcc mingw

好的,我刚开始学习C语言,我读过很多人建议使用MinGW作为编译器.我下载,安装并正确设置(我认为)并设置路径.一切似乎都没问题.我的问题是当我做这样的事情时,我找不到从CMD运行C文件的方法:

C:\>gcc a\c1.c
Run Code Online (Sandbox Code Playgroud)

CMD上没有任何内容

在c1.c文件中,我有以下内容:

#include <stdio.h>

int main(void)
{
    printf("this is a test.\n");
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我试过tcc编译器,当这样使用时:

C:\>tcc a\c1.c
Run Code Online (Sandbox Code Playgroud)

它输出以下内容:

this is a test.
Run Code Online (Sandbox Code Playgroud)

如何以相同的方式制作MinGW输出?我查看了MinGW/gcc手册和HowTos,但找不到办法做同样的事情.

Kei*_*son 6

gcc filename.c编译并链接您的文件 - 但它不会hello.exe像您期望的那样编写可执行文件(当然它不会执行它).

而且,与基于Unix的工具的惯例一样,gcc除非出现问题,否则通常不会打印任何内容.它完成并且你得到一个新C:\>提示的事实告诉你它成功了.

在Unix上,由于历史原因,可执行文件的默认名称是a.out.对于MinGW,默认名称为a.exe.

因此,运行后gcc a\c1.c,您可以运行a.exe./a.exe运行该程序.

或者,更好,正如Doug建议的那样,您可以使用该-o选项指定生成的可执行文件的名称.

(如果只想运行编译器并生成目标文件而不是可执行文件,请使用gcc -c.)