讲师中心 微信公众号
AI工具推荐 视频效率加速

VSCode配置C/C++环境:MinGW编译器安装与调试保姆级教程

小丽大大_6132

小丽大大_6132

发布时间:2026-04-13 16:40:56

|

597人浏览过

|

来源于php中文网

原创

能跑通g++ --version和gdb --version且路径不含中文、空格,是VS Code调试C/C++的硬门槛;必须将MinGW-w64的bin目录加入PATH、重启VS Code,并在tasks.json中加-g、launch.json中指定miDebuggerPath指向gdb.exe。

vscode配置c/c++环境:mingw编译器安装与调试保姆级教程

能跑通 g++ --version 和 gdb --version,且路径不含中文、空格,是 VS Code 能调试 C/C++ 的硬门槛;其余配置失败,90% 是卡在这一步。

MinGW-w64 安装路径和环境变量必须干净

Windows 上最常出问题的不是插件或 JSON 配置,而是 MinGW 的安装路径里带了中文、空格或符号(比如 C:Program Filesmingw64 或 D:我的C++项目mingw64)。这类路径会导致 g++ 找不到头文件、gdb 启动失败、VS Code 提示“无法启动调试会话”。

  • 解压或安装时直接选根目录,例如 C:mingw64 或 D:mingw64
  • 把 C:mingw64in(注意是 bin 子目录)加进系统环境变量 PATH,不是 C:mingw64 本身
  • 改完环境变量后,**必须重启 VS Code**(只关窗口不行,要彻底退出进程)
  • 验证方式:新开一个终端(CMD/PowerShell),执行 g++ --version 和 gdb --version,两行都输出版本号才算过关

tasks.json 编译任务必须含 -g 且用 g++.exe

VS Code 默认不生成调试信息,launch.json 依赖 tasks.json 输出带符号表的可执行文件。如果编译时不加 -g,断点会显示为“未绑定”,单步执行直接跳过。

  • 按 Ctrl+Shift+P → 输入 Tasks: Configure Default Build Task → 选 g++.exe build active file
  • 检查生成的 .vscode/tasks.json 中 args 是否包含:"-g"、"-std=c++17"(或更高)、"-O0"(调试时关闭优化)
  • 确保 command 是 "g++.exe",不是 "gcc.exe"(后者编译 C++ 文件可能链接失败)
  • 如果手动写 args,最后一项必须是 "-o", "${fileDirname}\${fileBasenameNoExtension}.exe",否则生成的 exe 不在当前目录,launch.json 找不到

launch.json 的 miDebuggerPath 必须指向真实 gdb.exe

VS Code 自动创建的 launch.json 常把 miDebuggerPath 设为空或默认值,导致点击 F5 时弹出“无法找到 GDB”或“gdb 进程已退出”。它不会自动猜你装在哪。

C++14
C++14

C++14 对 C++11 的修正与增强版本,适合旧系统维护和较老工具链兼容。

下载

立即学习“C++免费学习笔记(深入)”;

  • 打开 .vscode/launch.json,定位到 configurations 下的 miDebuggerPath 字段
  • 填入完整绝对路径,例如:"C:\mingw64\bin\gdb.exe"(注意双反斜杠)
  • 同时确认 program 字段指向的是 tasks 编译出的 exe,如 "${fileDirname}\${fileBasenameNoExtension}.exe"
  • 如果用了 Code Runner 插件,它的运行和调试是分离的——它不走 launch.json,所以调试仍需 F5 + 正确的 launch.json

C/C++ 扩展的 c_cpp_properties.json 要匹配 MinGW 头文件路径

没配好这个文件,编辑器里会满屏红色波浪线,#include <vector> 报错“无法打开源文件”,但代码实际能编译通过。这是 IntelliSense 路径和编译器路径不一致造成的假错误。

  • 按 Ctrl+Shift+P → 输入 C/C++: Edit Configurations (UI),打开图形化配置页
  • 在 “Compiler path” 中填:C:mingw64ing++.exe
  • 保存后,VS Code 会自动生成 includePath,通常包含 "C:/mingw64/x86_64-w64-mingw32/include/**" 等路径
  • 如果仍有报错,手动检查生成的 .vscode/c_cpp_properties.json 里 includePath 是否覆盖了 C:mingw64libgcc***includec++ 和 C:mingw64†_64-w64-mingw32include

真正卡住人的从来不是 JSON 文件怎么写,而是 g++.exe 和 gdb.exe 能不能被系统和 VS Code 同时“看见”。路径、环境变量、重启,这三件事漏掉任何一个,后面所有配置都是白忙。

热门AI工具

更多
SkildArt
SkildArt Hot

SkildArt是一款AI文本写作工具,一站式 AI 视觉创作平台。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

切问学术

切问学术是一款AI论文写作工具,复旦大学NLP团队推出的AI学术智能体。

Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

讯飞绘文

讯飞绘文是一款由科大讯飞推出的一站式 AIGC 内容运营平台。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

UP简历
UP简历 Hot

一款AI办公效率工具,主要用于基于AI技术的免费在线简历制作工具,适合需要提升相关任务效率的用户。

音述AI
音述AI Hot

一款AI音频处理工具,主要用于音述AI是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

2115

2023.08.07

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

3222

2023.08.23

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

1096

2023.10.13

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

3679

2025.09.10

default gateway怎么配置
default gateway怎么配置

配置default gateway的步骤:1、了解网络环境;2、获取路由器IP地址;3、登录路由器管理界面;4、找到并配置WAN口设置;5、配置默认网关;6、保存设置并退出;7、检查网络连接是否正常。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

357

2023.12.07

windows查看端口占用情况
windows查看端口占用情况

Windows端口可以认为是计算机与外界通讯交流的出入口。逻辑意义上的端口一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。怎么查看windows端口占用情况呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

3219

2023.07.26

查看端口占用情况windows
查看端口占用情况windows

端口占用是指与端口关联的软件占用端口而使得其他应用程序无法使用这些端口,端口占用问题是计算机系统编程领域的一个常见问题,端口占用的根本原因可能是操作系统的一些错误,服务器也可能会出现端口占用问题。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2798

2023.07.27

windows照片无法显示
windows照片无法显示

当我们尝试打开一张图片时,可能会出现一个错误提示,提示说"Windows照片查看器无法显示此图片,因为计算机上的可用内存不足",本专题为大家提供windows照片无法显示相关的文章,帮助大家解决该问题。

1488

2023.08.01

OpenJDK JVM参数怎么调优
OpenJDK JVM参数怎么调优

Java应用运行缓慢,如何调整JVM参数?本专题介绍OpenJDK JVM性能调优的基本流程,涵盖性能指标确认、运行数据采集、内存配置和垃圾回收分析,帮助你先定位瓶颈,再通过对照测试验证效果,避免直接套用参数而影响应用稳定性。

20

2026.10.16

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn