vscode配置C调试环境(launch.json tasks.json setting.json)

废话不多说,直接甩配置代码。如有在参考过程中有问题请联系我。

首先,tasks.json是用来设置指令编译代码,launch.json是设置执行环境来执行代码。setting是设置语言环境;

tasks.json:

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "label": "build",  // task的名字是build,在launch.json内根据此任务名调用此任务;

            "type": "shell",   // 任务执行的是shell命令

            "command": [ "vcvarsall.bat && gmake TARGET_PLATFORM=PC TARGET_BUILD=debug CORE=eve RUN_REF_FOR_STATS=1  all"],  // 执行的具体指令

            "args": [         // 如果上述的shell命令需要对象,则在这里添加,不需要可直接删掉;
                "'-Wall'",
                "'-std=c++17'",  //使用c++17标准编译
                "'${file}'", //当前文件名
                "-o", //对象名,不进行编译优化
                "'${fileBasenameNoExtension}.exe'",  //当前文件名(去掉扩展名)
            ],

            "problemMatcher": [
                "$msCompile"      //设置捕获错误的工具;
            ]
        }
    ]
}

launch.json:

备注1:编译器的参数,可以用ctrl+space来查看有哪些可用参数,也可以在configurations中存在鼠标光标的情况下,点击右下自动出现的Add Configurations按钮。

备注2:应该选 launch不选attach,attach用来给正在执行的文件用的,比如网页中的组件,而launch是执行新文件。

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(Windows) Launch",
            "type": "cppvsdbg",
            "request": "launch",     // 执行当前文件
            "program": "D:\\PROCESSOR_SDK_VISION_03_04_00_00\\ti_components\\algorithms\\REL.TIDLSRC.01.01.01.00\\modules\\ti_dl\\test\\out\\eve_test_dl_algo_debug_ref.out.exe",
            //"program": "D:\\Aprj3_CNN_Test\\FromLamei190505\\tidl_model_import.out.exe",
            "args": ["D:\\Aprj3_CNN_Test\\FromLamei190505\\tempDir\\configFilesList.txt"],
            //"args": ["D:\\Aprj3_CNN_Test\\FromLamei190505\\tempDir\\mobilenetv1fc1.txt"],
            "stopAtEntry": false,        // 选为true则会在打开控制台后停滞,暂时不执行程序,一般选false.
            "preLaunchTask": "build",    //task的名字,一定要跟上述的task名字对应好;
            "cwd": "D:\\Aprj3_CNN_Test\\FromLamei190505",  //当前执行程序的路径
            "environment": [],
            "externalConsole": true
        }
    ]
}

setting.json:

{
    "files.associations": {
        "tidl_alg_int.h": "c",
        "limits": "c"
    }
}

 

 

<think>好的,我需要帮助用户在VSCode配置setting.json文件来支持C++开发环境。首先,我应该回忆用户提供的引用内容,特别是引用[3],里面提到了launch.jsontasks.jsonsettings.json的写法示例,以及一些预定义变量的解释。用户现在特别关注settings.json的设置,所以我要集中在这个文件上。 首先,setting.json的作用是什么?它主要用于配置VSCode的全局或工作区设置,比如编译器路径、调试器设置、代码格式化选项等。对于C++开发,可能需要配置IntelliSense引擎、包含路径、编译器路径等。 根据引用[3],提到了预定义变量如${workspaceFolder},这些变量可能在设置路径时有用。用户需要配置C++的包含路径和编译器路径,可能还需要调整IntelliSense的设置。 接下来,我需要考虑用户可能的步骤。首先,用户需要安装C++扩展,比如Microsoft的C/C++扩展。然后,配置编译器路径,比如MinGW的g++.exe路径。在setting.json中,可以设置"cpptools"相关的配置项,例如"codeAnalysis.clangTidy.enabled"是否启用Clang Tidy,或者"intelliSenseMode"设置IntelliSense的模式。 另外,引用[2]提到在Windows下配置GCC环境变量,用户可能需要确保编译器路径已添加到系统环境变量中,这样VSCode才能找到。如果用户已经按照引用[2]安装了MinGW,那么设置中的编译器路径应该指向g++.exe的位置,比如"C:/mingw64/bin/g++.exe"。 同时,可能还需要配置includePath,告诉VSCode在哪里查找头文件。例如,如果使用MinGW,可能需要包含"C:/mingw64/include/**"这样的路径。此外,设置C++标准版本,比如c++17,可以通过编译器参数来指定。 在编写setting.json时,需要注意正确的JSON格式,避免语法错误。例如,使用双引号,正确的大括号和逗号。用户可能会遇到路径反斜杠的问题,应该使用正斜杠或者双反斜杠。 最后,可能需要指导用户如何打开settings.json。通常可以通过命令面板(Ctrl+Shift+P)搜索“Preferences: Open Settings (JSON)”来直接编辑文件。或者通过UI设置界面进行配置,但用户明确要求编辑setting.json文件,所以应该直接提供JSON内容。 需要验证我的思路是否正确。例如,配置"codeAnalysis.clangTidy.enabled"是否真的有效,以及"intelliSenseMode"的正确值是什么。根据Microsoft的文档,IntelliSense模式可以是"msvc-x64"或"gcc-x64",这取决于使用的编译器。用户使用MinGW,所以应该是"gcc-x64"。 另外,可能需要设置"compilerPath"来指定g++的路径,这样IntelliSense可以正确解析头文件。例如: "C_Cpp.default.compilerPath": "C:/mingw64/bin/g++.exe", "C_Cpp.default.includePath": ["${workspaceFolder}/**", "C:/mingw64/include/**"] 这样配置后,IntelliSense应该能够找到必要的头文件。 还要考虑代码格式化的设置,比如使用Clang-Format,可以在setting.json配置: "C_Cpp.formatting": "clangFormat", "C_Cpp.clang_format_path": "C:/mingw64/bin/clang-format.exe" 但需要用户是否安装了Clang-Format,否则可能需要额外安装。 总结步骤: 1. 安装C/C++扩展。 2. 配置编译器路径和包含路径。 3. 设置IntelliSense模式。 4. 可能配置代码分析和格式化选项。 需要确保示例代码中的路径正确,并且使用用户可能安装的路径,比如引用[2]提到的MinGW路径。同时提醒用户根据实际安装路径修改。 可能遇到的问题:路径错误、JSON语法错误、扩展未正确安装。需要提醒用户检查这些点。</think>在Visual Studio Code中配置`settings.json`文件是搭建C++开发环境的关键步骤,主要用于设置编译器路径、调试配置和代码分析工具。以下是具体操作步骤和配置示例: --- ### **一、基础配置流程** 1. **安装必要组件** - 安装[C/C++扩展](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools)(Microsoft官方插件)[^3] - 确保已安装MinGW编译器(参考引用[2]的GCC安装路径) 2. **打开`settings.json`文件** - 快捷键`Ctrl+Shift+P`打开命令面板,输入`Preferences: Open Settings (JSON)`[^1] - 或通过UI界面配置后导出JSON格式。 --- ### **二、核心配置项示例** 在`settings.json`中添加以下内容(路径需根据实际安装位置调整): ```json { "C_Cpp.default.compilerPath": "C:/mingw64/bin/g++.exe", "C_Cpp.default.includePath": [ "${workspaceFolder}/**", "C:/mingw64/include/**" ], "C_Cpp.intelliSenseMode": "gcc-x64", "C_Cpp.codeAnalysis.clangTidy.enabled": true, "C_Cpp.codeAnalysis.runAutomatically": true", "editor.formatOnSave": true, "files.associations": { "*.cpp": "cpp", "*.h": "c" } } ``` #### **参数说明** - **compilerPath**: 指定G++编译器路径(需与MinGW安装路径一致)[^2] - **includePath**: 添加头文件搜索路径,`**`表示递归匹配子目录 - **intelliSenseMode**: 设置为`gcc-x64`以匹配MinGW工具链 - **codeAnalysis.clangTidy**: 启用静态代码检查 - **formatOnSave**: 保存时自动格式化代码(需安装Clang-Format) --- ### **三、常见问题排查** 1. **路径错误** - 检查`compilerPath`是否指向有效的`g++.exe`文件(如`C:/mingw64/bin/g++.exe`)[^2] - 使用正斜杠`/`或双反斜杠`\\`避免转义问题 2. **IntelliSense失效** - 重启VSCode或执行命令`C/C++: Reset IntelliSense Database` - 确认`includePath`包含标准库路径(如`C:/mingw64/include/**`) 3. **代码格式化异常** - 安装Clang-Format并配置路径: ```json "C_Cpp.clang_format_path": "C:/mingw64/bin/clang-format.exe" ``` --- ### **四、扩展配置建议** - **调试配置**:需配合`launch.json`和`tasks.json`定义编译任务(参考引用[3]的变量语法) - **多工作区配置**:通过工作区级`settings.json`覆盖全局设置 - **环境变量**:在JSON中使用`${env:变量名}`引用系统变量[^3] ---
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值