You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VSCode编译C/C++程序出现undefined reference to `WinMain@16'错误求助

解决 undefined reference to WinMain@16 编译错误

原因及修复步骤

1. 确认程序入口函数正确

你的Hello World必须用标准控制台入口main,别写错:

#include <stdio.h>
int main() {
    printf("Hello World!\n");
    return 0;
}

要是写成WinMain又没配置GUI编译,或者把main拼错成Main/MAIN,都会触发这个错误。

2. 调整编译命令/配置

如果手动用gcc编译,加-mconsole参数强制编译成控制台程序:

gcc your_file.c -o output.exe -mconsole

用VSCode的tasks.json编译的话,把-mconsole加到args里,示例片段:

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "gcc build active file",
            "type": "shell",
            "command": "gcc",
            "args": [
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe",
                "-mconsole"
            ]
        }
    ]
}

3. 检查VSCode扩展配置

  • 按Ctrl+Shift+P打开命令面板,输入C/C++: Edit Configurations (UI),确认"Compiler Path"指向正确的gcc路径(比如MinGW的bin/gcc.exe)。
  • 确保"Intelli Sense Mode"和你的编译器匹配(比如64位MinGW选gcc-x64)。

4. 清理残留编译文件

删掉项目目录里的旧.exe、.obj文件,再重新编译,有时候残留文件会搞出问题。

5. 检查源文件扩展名

确保你的代码文件后缀是.c或.cpp,扩展名不对编译器可能不认。

内容的提问来源于stack exchange,提问作者Mr.Brown

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 00:22:13