VSCode本身不编译运行代码,需先确保终端中clang --version等命令能正常执行;若报错,应运行xcode-select --install安装命令行工具并重启VSCode,再配置Code Runner等插件。

VSCode 本身不运行代码,它只是个编辑器——你得先让系统能跑通命令,再让插件调用它们。Mac 上点“运行”失败,90% 是因为终端里 python3 --version 或 clang --version 都报错,VSCode 自然也无从下手。
终端能跑命令,VSCode 才可能运行成功
别跳过这步直接配插件。打开 Terminal,逐条执行:
-
python3 --version—— 如果报command not found,说明没装 Python 3 或没加进 PATH;Homebrew 装的要确认是否执行过brew install python,且/opt/homebrew/bin(Apple Silicon)或/usr/local/bin(Intel)已写入~/.zprofile -
clang --version—— Mac 自带,但新系统或 M 系统常未激活;若报错,立刻跑xcode-select --install,装完重启 VSCode -
code --version—— 验证命令行工具是否生效;如果不行,Cmd+Shift+P → 输入Shell Command: Install 'code' command in PATH再重开终端
所有命令都返回版本号,才算真正准备好。GUI 应用(包括 VSCode)不读 ~/.zshrc,必须把 PATH 写进 ~/.zprofile,否则插件永远找不到命令。
Code Runner 默认配置在 Mac 上几乎必崩
它默认用 python,而 Homebrew 安装的是 python3;默认用 gcc 编译 C,但 Mac 的 gcc 实际是 Clang 软链接,且不自动链接标准库。
进 VSCode 设置 → 搜索 code-runner.executorMap → 编辑用户设置 JSON:
{
"code-runner.executorMap": {
"python": "python3 -u",
"c": "cd $dir && clang $fileName -o $fileNameWithoutExt && ./$fileNameWithoutExt",
"cpp": "cd $dir && clang++ $fileName -o $fileNameWithoutExt && ./$fileNameWithoutExt"
},
"code-runner.runInTerminal": true,
"code-runner.clearPreviousOutput": true
}
关键点:-u 避免 Python 输出缓冲卡住;runInTerminal 才能交互输入;clearPreviousOutput 防止多次运行结果堆叠看不清。
C/C++ 头文件报红?先别碰 c_cpp_properties.json
新建 hello.c 写 #include <stdio.h> 就标红,大概率不是配置问题,而是 Clang 根本没装好。先确保 clang --version 有输出,再试。
如果确认 Clang 可用还报红:
- 首次打开
.c文件时,右下角弹出 Quick Fix → 选Use clang in /usr/bin,VSCode 会自动生成.vscode/c_cpp_properties.json - 生成的配置里
compilerPath是/usr/bin/clang,没问题;如果你手动装了gcc-13,才需要改成/opt/homebrew/bin/gcc-13 - 别手动生成或复制网上的配置——路径不对会导致 IntelliSense 和实际编译器行为不一致
按 Cmd+Alt+N 运行,别按 F5
F5 是调试快捷键,一按就弹 launch.json 向导,新手容易卡住。写 C/Python 小 demo,目标是“改完代码→立刻看到输出”,不是断点跟踪。
Code Runner 默认运行快捷键是 Cmd+Alt+N(Mac),右键菜单也有 “Run Code”。只要上面三步做完,点一下就能看到终端里输出 hello world 或 Hello, World!。
真正容易被忽略的是:每次改完 ~/.zprofile 或装完 Command Line Tools,必须完全退出 VSCode(不只是关窗口),再重新打开——它不会热加载 shell 环境变量。



















