【无标题】

标题-VS Code for Mac c++配置环境-参考官方文档

VS Code for Mac c++配置环境-参考官方文档

环境准备

软件环境

1.系统:Mac OS Sonoma 14.2

2.vs code 1.85

3.Xcode

插件下载

1.chinese 汉化

2.c/c++

3.Code Runner

检查clang

在终端输入

clang --version

如果没有安装,安装Xcode

xcode-select --install

创建文件夹和文件

1.选择磁盘,创建一个专用的文件夹,从VScode中打开文件夹

2.在文件夹下创建cpp文件

3.在新建的cpp文件中粘贴官方文档代码进行验证

cpp 复制代码
#include <iostream>
#include <vector>
#include <string>

using namespace std;

int main()
{
    vector<string> msg {"Hello", "C++", "World", "from", "VS Code", "and the C++ extension!"};

    for (const string& word : msg)
    {
        cout << word << " ";
    }
    cout << endl;
}

配置文件

tasks.json文件

1.保存文件

2.点击运行c/c++文件,选择如图所示的。如果未弹出,按F5,然后如下图所示。会自动生成tasks.json文件

选择第一个

选择第一个c++(gdb/lldb)

选择第二个,clang++

编译成功后,会成功输出

配置tasks.json文件,以下是我的配置文件

cpp 复制代码
{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: clang++ 生成活动文件",
            "command": "/usr/bin/clang++",
            "args": [
                "-std=c++17",
                "-fcolor-diagnostics",
                "-fansi-escape-codes",
                "-g",
                "${file}",
                // "${workspaceFolder}/*.cpp" // 多cpp文件编译
                "-o",
                // "${fileDirname}/${fileBasenameNoExtension}" // 生成文件路径
                "${workspaceFolder}/build/${fileBasenameNoExtension}"
                // "-fcolor-diagnostics",
                // "-fansi-escape-codes",
                // "-g",
                // "${file}",
                // "-o",
                // "${fileDirname}/${fileBasenameNoExtension}"
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "调试器生成的任务。"
        }
    ],
    "version": "2.0.0"
}

launch.json

cpp 复制代码
{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "C/C++: clang++ build and debug active file",
            "type": "cppdbg",
            "request": "launch",
            // 可执行文件,和task.json中的-o对应的可执行文件输出路径一致
            "program": "${workspaceFolder}/build/${fileBasenameNoExtension}",
            "args": [],
            "stopAtEntry": true,
            "cwd": "${workspaceFolder}",
            "environment": [],
            // "externalConsole": true,
            "externalConsole": false,
            "MIMode": "lldb",
            "preLaunchTask": "C/C++: clang++ 生成活动文件"
        }
    ]
}

c_cpp_properties.json

按F1,搜索

cpp 复制代码
{
    "configurations": [
        {
            "name": "Mac",
            "includePath": [
                "${workspaceFolder}/**"
                // "/Library/Developer/CommandLineTools/usr/include",
                // "/Library/Developer/CommandLineTools/usr/lib/clang/15.0.0/include",
                // // 请根据你的clang版本修改,我这里是11.0.3
                // "/usr/local/include"
            ],
            "defines": [],
            "macFrameworkPath": [
                "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks"
                // "/Library/Frameworks"
            ],
            "compilerPath": "/usr/bin/clang++",
            "cStandard": "c17",
            "cppStandard": "c++17",
            "intelliSenseMode": "macos-clang-arm64"
        }
    ],
    "version": 4
}

验证

运行代码,正常输出

设置断点,进行debug调试

关于调试的问题

如果需要进行cin操作,vscode内的终端无法输入,目前的解决办法是将launch.json文件中的将"externalConsole": false,中的false改为true。即可调用外部终端

相关推荐
从零开始的代码生活_1 小时前
C++ 继承详解:访问控制、对象模型、菱形继承与设计取舍
开发语言·c++·后端·学习·算法
云小逸1 小时前
【C++ 第七阶段:模板、泛型编程与工程综合详解】
开发语言·c++
GIS阵地2 小时前
QgsSingleBandPseudoColorRenderer 完整详解(QGIS 3.40.13 C++)
开发语言·前端·c++·qt·qgis
AI的探索之旅2 小时前
AI辅助原理图评审:电源去耦、BOOT引脚、VCAP——19项逐一核查,遗漏?不存在的
人工智能·vscode·嵌入式硬件
王维同学2 小时前
[原创][Windows C++]LSA 认证、安全与通知包的注册表枚举
c++·windows·安全
程序员Rock2 小时前
上位机开发-MODBUS面试常见问题
c语言·c++·面试·职场和发展·上位机
_wyt0013 小时前
完全背包问题详解
c++·背包dp
皓月斯语5 小时前
B3842 [GESP202306 三级] 春游 题解
数据结构·c++·算法·题解
寒水馨5 小时前
macOS下载、安装openclaw-v2026.7.1(附安装包OpenClaw-2026.7.1.dmg)
macos·大模型·github·开源软件·ai助手·openclaw·gpt-5.6
CedarQR5 小时前
万字长文:从零在 RK3588 上部署 PaddleSpeech 中文 TTS 全流程(FastSpeech2 + HiFiGAN)
开发语言·c++·嵌入式硬件·ubuntu·json