win10 下vscode配置c++编程

参考视频教程:Visual Studio Code安装配置C/C++教程,VSCode调试教程,VSCode安装使用教程,VSCode配置c/c++_哔哩哔哩_bilibili

离线安装所需要的文件整理如下:

链接:https://pan.baidu.com/s/1Bm1iEOexyWmCi0gQwID7tg

提取码:53ft


步骤一:下载并安装vscode,安装相关插件。

为了便于离线安装,我把相关软件和插件整理好在百度云中共享。

**vscode: 链接:**https://pan.baidu.com/s/1ZKlDnaiX3ehM9M0iB6aDFw 提取码:xjh8

vscode配置c++需要的插件:链接:https://pan.baidu.com/s/14xNJOwOMLaL6fzrZlSTf9g 提取码:3ps2

步骤二:下载MinGW。把MinGW解压后得到的bin文件夹添加到系统路径中。

MinGW-x86_64-8.1.0 : 链接:https://pan.baidu.com/s/1PuMBXQ9A7mIbaXfPEYBoSQ

提取码:mnta

备注:推荐使用这个版本,更高版本中不包含gbd.exe,会带来额外的麻烦。

步骤三:配置task.json和launch.json。

这两个配置文件自动生成,只需要修改对应的几行代码即可。

说明:

**task.json文件:**用于指定C/C++的编译(build)工具,其中C语言文件用gcc.exe编译, C++文件用g++.exe编译。gcc.exe和g++.exe都位于MinGW/bin文件夹中。

**launch.json文件:**用于指定C/C++的debug工具,C和C++都用gdb.exe进行debug.(在MinGW-8.1.0之后的版本,bin文件夹中不包含gdb.exe程序了,因此本文推荐使用MinGW-8.1.0)

task.json和launch.json文件的内容和需要修改的位置如下:

task.json ## 需要修改的位置我用注释标注了,个人认为,其实这里不用进行修改。

cpp 复制代码
{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: gcc.exe build active file",
            "command": "E:\\software-setups\\MinGW\\mingw-w64\\x86_64-8.1.0-posix-seh-rt_v6-rev0\\mingw64\\bin\\gcc.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                // "${file}",
                "*.c",//第一处需要修改的地方;当前文件夹所有的.c文件都编译
                "-o",
                // "${fileDirname}\\${fileBasenameNoExtension}.exe"//生成的执行程序名称
                "${fileDirname}\\a.exe"//第二处需要修改的地方:生成的执行程序名称//实际上此处可以不用修改
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "Task generated by Debugger."
        }
    ],
    "version": "2.0.0"
}

launch.json文件的内容及修改的位置见下

cpp 复制代码
{
    // 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": "(gdb) Launch",
            "type": "cppdbg",
            "request": "launch",
            // "program": "enter program name, for example ${workspaceFolder}/a.exe",//输入程序名
            "program": "${fileDirname}\\a.exe",//第一处需要修改的地方:输入程序名//实际上此处可以不用修改
            "args": [],
            "stopAtEntry": false,
            "cwd": "${fileDirname}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerPath": "E:\\software-setups\\MinGW\\mingw-w64\\x86_64-8.1.0-posix-seh-rt_v6-rev0\\mingw64\\bin\\gdb.exe",//第二处需要修改的地方:输入gdb的路径,在mingw/bin文件夹下
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                },
                {
                    "description": "Set Disassembly Flavor to Intel",
                    "text": "-gdb-set disassembly-flavor intel",
                    "ignoreFailures": true
                }
            ]
        }

    ]
}
相关推荐
蜀黍@猿23 分钟前
【C++ 基础】从C到C++有哪些变化
c++
Am心若依旧40924 分钟前
[c++11(二)]Lambda表达式和Function包装器及bind函数
开发语言·c++
zh路西法35 分钟前
【C++决策和状态管理】从状态模式,有限状态机,行为树到决策树(一):从电梯出发的状态模式State Pattern
c++·决策树·状态模式
轩辰~1 小时前
网络协议入门
linux·服务器·开发语言·网络·arm开发·c++·网络协议
lxyzcm1 小时前
C++23新特性解析:[[assume]]属性
java·c++·spring boot·c++23
蜀黍@猿1 小时前
C/C++基础错题归纳
c++
雨中rain2 小时前
Linux -- 从抢票逻辑理解线程互斥
linux·运维·c++
ALISHENGYA3 小时前
全国青少年信息学奥林匹克竞赛(信奥赛)备考实战之分支结构(实战项目二)
数据结构·c++·算法
arong_xu3 小时前
现代C++锁介绍
c++·多线程·mutex
汤姆和杰瑞在瑞士吃糯米粑粑3 小时前
【C++学习篇】AVL树
开发语言·c++·学习