MinGW编译c

MinGW compile c

我安装了MinGW,写了下面的代码测试

#include <stdio.h>
int main() {
#if defined(__WIN32__)
    printf("hello win.");
#else
    printf("hello unix.");
#endif
    return 0;
}

然后编译和运行.

V002294@DESKTOP-A0H4TOJ /c/Users/V002294
$ gcc test.c -o test

V002294@DESKTOP-A0H4TOJ /c/Users/V002294
$ ./test.exe
hello win.

为什么不 "hello unix"

__WIN32__ 必须根据您得到的结果进行定义。

看起来 运行 gcc 它正在使用 MinGW 的 gcc。

检查您的 PATH 环境变量 (echo $PATH) 以查看 MinGW 位置是否在 Linux 版本之前。或者只是 运行 which gcc 查看正在使用哪个。

或者您可能没有安装任何其他 gcc,这就是它默认使用 MinGW gcc 的原因。