Sublime Text 需配合本地 g++ 或 MinGW-w64 编译器才能运行 C++ 程序,配置核心是设置正确的构建系统并确保编译器路径已加入 PATH;Windows 用户还需处理 UTF-8 with BOM 编码及 _setmode 中文输出支持。

Sublime Text 本身不带编译器,也不能直接“运行”C++程序——它只是个编辑器。真正能运行 C++ 的,是你本地安装的 g++(Linux/macOS)或 MinGW-w64(Windows)。配置的关键,是让 Sublime 知道去哪调用这个编译器,并按正确顺序执行编译 + 运行。
确认系统已装好 C++ 编译器
这是最常卡住的一步:很多人以为装了 Sublime 就能跑 C++,结果点“Build”只看到 command not found: g++ 或 'g++' is not recognized as an internal or external command。
- Windows 用户必须手动安装
MinGW-w64(推荐使用msys2安装的mingw64工具链),并把g++.exe所在路径(如C:\msys64\mingw64\bin)加进系统PATH环境变量 - macOS 用户用
brew install gcc,安装后g++通常软链为g++-14(版本号可能不同),建议用which g++确认实际命令名 - Linux 用户一般自带
g++,但需确认:运行g++ --version有输出,且不是command not found
创建 Sublime 的 C++ 构建系统(.sublime-build)
Sublime 通过构建系统(Build System)定义“按下 Ctrl+B 后干啥”。默认的 C++ Single File 往往不带运行步骤,也未必匹配你本地的 g++ 路径或参数。
- 菜单栏选
Tools → Build System → New Build System… - 清空默认内容,粘贴以下内容(Windows 用户注意路径分隔符和
shell_cmd中的.exe):
{
"shell_cmd": "g++ -std=c++17 -Wall \"${file}\" -o \"${file_path}/${file_base_name}\" && \"${file_path}/${file_base_name}\"",
"file_regex": "^(..[^:]*):([0-9]+):([0-9]+):? (.*)$",
"working_dir": "${file_path}",
"selector": "source.c++, source.cpp",
"variants": [
{
"name": "Run",
"shell_cmd": "g++ -std=c++17 -Wall \"${file}\" -o \"${file_path}/${file_base_name}\" && \"${file_path}/${file_base_name}\""
}
]
}
保存为 C++.sublime-build(文件名必须以 .sublime-build 结尾),建议存到 Packages/User/ 目录下。
-
-std=c++17显式指定标准,避免老编译器默认用 C++98 导致新语法报错 -
-Wall开启常用警告,对初学者极有用 -
&&表示前一个命令成功才执行下一个,即“编译成功才运行”,防止运行旧可执行文件 - Windows 用户若用
MinGW-w64,shell_cmd中的g++可能需写成g++.exe,且运行部分要加./前缀:"./${file_base_name}.exe"
解决中文输入/输出乱码(Windows 高频问题)
用 MinGW 编译的程序在 Windows 终端里打印中文,经常显示为 ???,这不是 Sublime 的锅,而是控制台编码和源文件编码不一致。
- 确保你的 .cpp 文件保存为
UTF-8 with BOM(Sublime 右下角看编码,菜单File → Save with Encoding → UTF-8 with BOM) - 在代码开头加两行(仅 Windows MinGW 有效):
std::wcout
C++免费学习笔记(深入):立即使用
在学习笔记中,你将探索 C++ 的入门与实战技巧!











