能跑起来的前提是gcc -v在windows终端中直接返回版本号;需正确配置环境变量指向mingw的bin目录,安装c/c++和code runner两个插件,修复中文乱码需修改code runner执行命令为powershell,tasks.json和launch.json非单文件必需。

能跑起来,前提是 gcc -v 在 Windows 终端里能直接敲出来并返回版本号——不是“下载了 MinGW”就算配好了,而是系统真认得 gcc 这个命令。
验证 gcc 是否真正可用
很多人卡在“写完代码点运行没反应”或“报错找不到编译器”,其实根本没走到 VSCode 那一步,问题出在系统层面。
- 打开任意位置的 PowerShell 或 CMD,输入
gcc -v - 必须看到类似
gcc version 14.2.0 (MinGW-W64)...的输出 - 如果提示
'gcc' 不是内部或外部命令,说明环境变量没生效,或路径填错了 - 常见坑:路径含中文、空格、括号(如
C:Program Files...);改完环境变量后没重启终端;复制的是整个解压目录路径,而不是bin子目录路径(正确示例:C:mingw64in)
只装这两个插件就够了
VSCode 的 C 开发不需要堆砌插件,装多反而冲突。核心就两个:
-
C/C++(Microsoft 官方):提供语法高亮、跳转、#include路径解析、IntelliSense -
Code Runner(Jun Han):按Ctrl+Alt+N一键编译并运行单文件,底层调用的就是你系统里的gcc - 别装名字相近的插件,比如
C/C++ Runner或C++ TestMate,它们和Code Runner功能重叠但配置逻辑不同,容易互相干扰 - 装完不用重启 VSCode,但首次打开
.c文件时,右下角弹出“检测到 C 文件,是否配置 IntelliSense?”——点“是”,它会自动生成.vscode/c_cpp_properties.json
Code Runner 中文乱码怎么修
写 printf("你好"); 输出一堆“烫烫烫”或“锟斤拷”,不是源码编码问题,而是 Code Runner 默认用 CMD 执行,而 CMD 默认 GBK 编码,但 gcc 编译时按 UTF-8 处理源文件。
- 打开 VSCode 设置(
Ctrl+,),搜索code-runner.executorMap - 点击“在 settings.json 中编辑”,找到
"c"对应的命令行 - 替换成以下内容(强制用 PowerShell 启动,避免 CMD 编码错乱):
"c": "cd $dir && gcc -g $fileName -o $fileNameWithoutExt.exe && Start-Process powershell -ArgumentList '-NoExit', '-Command', 'cd $dir; ./$fileNameWithoutExt.exe'"
- 这个命令还带
-NoExit,防止窗口一闪退;如果你习惯手动敲gcc -o a.exe hello.c && a.exe,那根本不会出现乱码——说明问题纯属Code Runner的执行环境不匹配
tasks.json 和 launch.json 不是必须手写
新手常被“要配三个 JSON 文件”吓退,其实绝大多数单文件练习场景下,Code Runner 已经覆盖全部需求。只有当你需要调试(打断点、看变量)、或项目含多个源文件时,才需手动干预。
-
tasks.json:定义编译任务。如果只用Code Runner,它内部已封装好,无需额外配置 -
launch.json:定义调试器启动方式。只有点击左侧“运行和调试”图标、选“C++ (GDB/LLDB)”才会生成,且依赖gdb可用(MinGW 自带gdb.exe,但需确保它也在PATH里) -
c_cpp_properties.json:IntelliSense 配置。点“是”自动生成后,一般不用改;若头文件报红(include errors detected),检查"compilerPath"是否指向你 MinGW 的gcc.exe(如C:\mingw64\bin\gcc.exe),路径用双反斜杠或正斜杠都行,但不能漏掉.exe
真正容易被忽略的是:所有路径都不能含中文、空格、括号;环境变量改完必须新开终端验证;Code Runner 的编码问题不是改文件保存格式能解决的——它卡在执行层,得换 shell。
13万字C语言保姆级教程(深入):立即使用
在学习笔记中,你将探索c语言的核心概念和高级技巧!











