Windows:MinGW + VS Code 环境
在 Windows 上装好 MinGW-w64 编译器与 VS Code,跑通第一个 C 程序
- 来源
- 更新
标记说明:【来源】来自上传资料 · 【补充】课程新编 · 【纠错】按勘误表修正 · 【更新】过时内容已现代化 · 【待确认】无法可靠还原
本章含平台相关内容(platform_scope: distribution-specific)
以下【平台示例】仅为演示载体,不构成本课程依赖;不同架构/SoC/板卡/发行版的区别见【平台差异】标注,换平台时请完成文末「迁移训练」。
完成标准(本章)
- 📖 已阅读:滚动 ≥ 80% 且有效阅读 ≥ 120 秒
- ✏️ 已练习:小练习正确率 ≥ 60%
- 📝 已通过测验:分数 ≥ 60 分
- 🛠️ 已掌握还需完成实践任务
0.2.1 Windows:MinGW + VS Code 环境
本章来源:VS Code 部分来自《第一阶段讲义》2.1-2.4 节【来源】;版本相关一律【更新】为"当前稳定版 + 验证命令",不锁定历史版本;MinGW 安装与故障排查为新编【补充】。 平台适用性:distribution-specific(本章本身即 Windows 平台内容;Linux 环境见 0.2.2,Mac 见迁移训练)。
① 学习目标
- 独立安装 MinGW-w64 并配置 PATH;
- 安装 VS Code 与 C/C++、Code Runner 插件;
- 用 4 条验证命令确认环境就绪;
- 能排查"终端找不到 gcc"类问题(PATH 与终端重开);
- 完成环境配置笔记(实践任务)。
② 前置知识
- 建议:0.1.5 学习计划(本章是计划落地的第一步)。
③ 核心概念【来源+补充】
| 概念 | 说明 |
|---|---|
| MinGW-w64 | GCC 在 Windows 上的移植(x86_64),与 Linux 的 gcc 同源、选项一致 |
| PATH | 终端查找可执行文件的目录列表;配置改动需重开终端生效 |
| VS Code 插件 | C/C++(微软官方,智能提示/调试)、Code Runner(一键运行) |
| 验证命令 | gcc --version、where gcc、code --version 三连即确认就绪 |
| tasks.json | VS Code 的编译任务配置(多文件工程,1.1 章展开) |
④ 通俗解释【补充】
编译器(gcc)是"翻译官",编辑器(VS Code)是"写字台",PATH 是"值班表":
- 装好翻译官后,你得把它登记进值班表(PATH),前台(终端)按值班表找人——没登记或没换班(没重开终端),自然喊不到人;
- 写字台本身不翻译,但它可以挂上"翻译官分机"(插件),按一个键就让翻译官干活(Code Runner);
- 本章目标就一件事:让"写字台 → 翻译官 → 值班表"这条线通起来,验证标准是三条命令都有回话。
⑤ 示例代码
代码示例与验证记录
- examples/verify-commands.txt环境验证命令清单(PowerShell / CMD)✓ 已实测(Windows 11 + MinGW-w64 gcc 15.2.0 + VS Code, 2026-08-15)编译:
按文件内顺序逐行执行适用环境:Windows(MinGW)展开预期输出(实测)
gcc --version → 显示 gcc 版本(如 gcc 15.2.0) g++ --version → 显示 g++ 版本 code --version → 显示 VS Code 版本 where gcc → 显示 gcc 所在路径(含 MinGW 的 bin 目录)
差异说明:版本号随安装时间不同;只要命令能输出信息即视为环境就绪
完整源码见 /code 代码示例页
⑥ 编译与运行方法
本章命令为环境验证命令(PowerShell/CMD),逐行执行即可,无编译步骤。第一条 C 程序的编译运行见 0.2.4。
⑦ 常见错误
| 症状 | 原因 | 解决 |
|---|---|---|
| "'gcc' 不是内部或外部命令" | PATH 未包含 MinGW/bin 或未重开终端 | 检查 PATH → 重开终端 → where gcc 验证 |
| 下载了 32 位旧版安装包 | 选错版本 | 选择 x86_64 的当前稳定版 |
| VS Code 找不到编译器 | 插件配置的编译器路径错误 | C/C++ 插件设置或 tasks.json 中指向 gcc.exe 实际路径 |
| code 命令不存在 | 未安装 PATH 入口 | VS Code 内 Ctrl+Shift+P → "Shell Command: Install 'code' command" |
| 中文乱码 | 终端代码页与源码编码不一致 | 源码统一 UTF-8;终端 chcp 65001(了解即可,1.2.6 再深入) |
⑧ 小练习
小练习
学习自测:提交后才显示答案与解析(前端判分,不作为正式考试)ex-0-2-1-1.MinGW-w64 中的 gcc.exe 位于安装目录的哪个子目录?(单选)
◌ 未作答ex-0-2-1-2.把 MinGW 的 bin 目录加入系统环境变量 PATH 的目的是?(单选)
◌ 未作答ex-0-2-1-3.判断:安装 MinGW 后,旧终端窗口可能仍然找不到 gcc,需要重开终端或重启。(判断)
◌ 未作答
⑨ 章节测验
章节测验
⑩ 实战任务
实践任务
搭建 Windows C 开发环境并记录验证截图
独立完成 MinGW-w64 与 VS Code 的安装配置,把验证命令的输出记录成一份环境配置笔记 (为 0.3 建仓后的首个提交做准备)。
输入与输出
无程序输入输出。交付物:环境配置笔记(含 4 条验证命令的输出截图或文字)与"我做了什么/踩了什么坑"小结。
功能要求
- 安装 MinGW-w64(当前稳定版)并配置 PATH
- 安装 VS Code + C/C++ 插件 + Code Runner
- 执行 ex1 命令清单中的全部验证命令并记录输出
- 记录至少一个踩坑与解决方法(如 PATH 不生效/终端不重开)
限制条件
- 使用当前稳定版工具,不锁定历史版本
- 笔记自己写,不得复制讲义段落
验收步骤(自检清单 0/4)
验收标准
- gcc --version 与 where gcc 输出正常(验收步骤 3)
- code --version 输出正常(验收步骤 3)
- 踩坑记录至少 1 条且真实(验收步骤 4)
常见失败原因
- 只装了 MinGW 忘记配 PATH
- 配了 PATH 不重开终端就说'没生效'
- 下载到 32 位旧版安装包(选择 x86_64 版本)
可选扩展
- 用 gcc 手动编译 0.2.4 的 hello.c(预告)
- 配置 VS Code 的 tasks.json 一键编译
完成必要清单后才能计入"已完成实践"(学习状态自动推导,不提供一键完成)
⑪ 面试问题
面试问题
为什么装了 gcc 但终端提示"不是内部或外部命令"?C/C++ · easy
要点:可执行文件所在目录不在 PATH 中,或配置后未重开终端。
终端按 PATH 环境变量中的目录顺序查找命令;gcc.exe 在 MinGW 的 bin 目录,若该目录不在 PATH, 就必须输入完整路径才能执行。解决:把 bin 目录加入 PATH 后重开终端(旧终端不刷新环境变量)。 排查顺序:where gcc 看是否找得到 → 找不到就查 PATH → 配好 PATH 重开终端再试。
追问:- 追问:PATH 的查找顺序有什么影响?(前面目录的同名程序会遮蔽后面的)
评分要点:- PATH 机制
- 重开终端
- 排查顺序
MinGW 和 MSVC 编译出来的程序有什么区别?C/C++ · medium
要点:MinGW 是 GCC 的 Windows 移植,遵循 GNU 工具链习惯;MSVC 是微软编译器,两者 ABI 与运行时不同。
MinGW-w64:GCC 系,命令行习惯与 Linux 一致(-Wall 等选项通用),生成原生 Windows 程序, 默认链接 msvcrt/ucrt;MSVC:微软工具链,优化与扩展不同,生成的库与 MinGW 不保证互相链接 (ABI 差异)。学习 Linux/嵌入式开发推荐 MinGW(与 Linux 上的 gcc 同源,教学一致性好)。
追问:- 追问:为什么本课程 Windows 环境选 MinGW 而不是 MSVC?
评分要点:- 同源性与选项一致
- ABI/运行时差异
描述一下你日常的 C 语言开发环境。高频C/C++ · easy
要点:Windows 用 MinGW-w64 + VS Code;Linux 用系统 gcc + VS Code Remote-SSH;多文件工程用 Makefile/CMake。
考察环境熟练度:编辑器(VS Code)、编译器(gcc)、构建工具(make/cmake)、调试器(gdb)、 版本管理(git)。能说清"编辑-编译-调试-提交"四个环节各用什么工具、一条命令如何跑通, 就是合格回答。加分项:提到远程开发与跨平台一致性。
追问:- 追问:多文件工程怎么编译?
评分要点:- 四环节工具齐全
- 一条命令跑通示例
⑫ 延伸阅读
- MinGW-w64 官方站点:Downloads 页面(按需下载,不复制内容);
- VS Code 官方文档:C/C++ 环境配置(Getting Started with C++ in VS Code);
- 微软 C/C++ 扩展文档:c_cpp_properties.json 配置说明;
- 下一章预告:0.2.2 Linux:虚拟机 Ubuntu + SSH——另一套主力环境。
迁移训练(migration training)
把本章技能迁移到 Linux(0.2.2 全流程)与 Mac(Homebrew:brew install gcc,其余验证命令一致):
不变的:验证命令(gcc --version/where→which gcc)、VS Code 与插件、编译工作流;
要改的:安装方式(包管理器 vs 安装器)、命令查找命令(where ↔ which)、路径写法(\ 与 /)。
内容来源映射
| 内容部分 | 资料 | 位置 | 标记 | 说明 |
|---|---|---|---|---|
| VS Code 安装、汉化、插件与项目管理 | 第一阶段讲义 | 2.1/2.2/2.3/2.4 节(PAGE 89-97) | 【来源】 | 正文重新组织表述 |
| 版本与安装方式 | 第一阶段讲义 | 2.1 节(PAGE 90) | 【更新】 | 原资料按当时版本演示;本章统一改为"当前稳定版"表述并给出验证命令,不锁定任何历史版本 |
| MinGW-w64 安装与 PATH 验证、命令清单、练习/测验/任务 | 无 | 【补充】 | 原资料该章主要围绕 VS Code;MinGW 步骤与故障排查为新编并实测 |