【C++】VSCode配置C++环境(详细教程)

前言

  • 本人环境: win10专业工作站版 64位
  • VSCode

配置C++环境

下载安装MinGW-w64及环境变量配置

MinGW:可以理解成包含多种编译环境的可自由选择安装的其中的部分的软件

下载地址:https://osdnc#是什么语言.net/projects/mic#教程ngw/downloads/68260/mingw-c#程序设计get-setup.exe/
直接弹窗下载即可,下载完json按照下面教程安装配置即可。
【C++】VSCode配置C++环境(详细教程)
安装
【C++】VSCode配置C++环境(详细教程)
c语言必背代码装完成后数据格式的见面
【C++】VSCode配置C++环境(详细教程)

下载相关文件(重要步骤)

点完Continue后或打开MinGW Installation Manager,
勾选编译器软件
【C++】VSCode配置C++环境(详细教程)
若在安装的时候报“栅格数据格式找不到 xxx 库”的错误,可以重新勾选此库和dll文件
【C++】VSCode配置C++环境(详细教程)
选择完后,点击Installation-->applychange,等待安装完就欧克
【C++】VSCode配置C++环境(详细教程)
【C++】VSCode配置C++环境(详细教程)
要是有下载失败失败,重复点点击Installajson数据tion-->applychange,等待安装完就收据格式范本图片欧克

配置win10的环境变量编译器英文

【C++】VSCode配置C++环境(详细教程)

【C++】VSCode配置C++环境(详细教程)

【C++】VSCode配置C++环境(详细教程)

【C++】VSCode配置C++环境(详细教程)

【C++】VSCode配置C++环境(详细教程)

检测是否安装成功:命令提示符中输入 gcc -v ,若显示版本号则说明安装成c语言功

【C++】VSCode配置C++环境(详细教程)

安装VScode

太简单了

在VScode中下载C/C++插件

【C++】VSCode配置C++环境(详细教程)

配置C++在VSCode中

  1. 创建C++工作区
  2. 新建一数据格式个文件夹(放c++代码文件)
  3. 数据格式化是什么意思此文件夹中新建.vsco编译器原理de、 lac语言软件unch.json、tasks.json三json是什么意思个文件夹矢量数据格式

【C++】VSCode配置C++环境(详细教程)

修改三个.json文件的配置json文件是干什么的

  • c_c语言中%d是什么意思cpp_properties.json文件

先确认自己的安装路径编译器原理

gcc -v -E -x c++ -

【C++】VSCode配置C++环境(详细教程)
【C++】VSCode配置C++环境(详细教程)
修改“includePath”和“Path”将图示的几行代替路径即可。

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceRoot}",
                "d:/mingw/include/**",
                "d:/mingw/bin/../lib/gcc/mingw32/8.2.0/include/c++",
                "d:/mingw/bin/../lib/gcc/mingw32/8.2.0/include/c++/mingw32",
                "d:/mingw/bin/../lib/gcc/mingw32/8.2.0/include/c++/backward",
                "d:/mingw/bin/../lib/gcc/mingw32/8.2.0/include",
                "d:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../include",
                "d:/mingw/bin/../lib/gcc/mingw32/8.2.0/include-fixed"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "__GNUC__=6",
                "__cdecl=__attribute__((__cdecl__))"
            ],
            "intelliSenseMode": "msvc-x64",
            "browse": {
                "limitSymbolsToIncludedHeaders": true,
                "databaseFilename": "",
                "path": [
                    "${workspaceRoot}",
                    "d:/mingw/include/**",
                    "d:/mingw/bin/../lib/gcc/mingw32/8.2.0/include/c++",
                    "d:/mingw/bin/../lib/gcc/mingw32/8.2.0/include/c++/mingw32",
                    "d:/mingw/bin/../lib/gcc/mingw32/8.2.0/include/c++/backward",
                    "d:/mingw/bin/../lib/gcc/mingw32/8.2.0/include",
                    "d:/mingw/bin/../lib/gcc/mingw32/8.2.0/../../../../include",
                    "d:/mingw/bin/../lib/gcc/mingw32/8.2.0/include-fixed"
                ]
            }
        }
    ],
    "version": 4
}
  • lauc#是什么ch编译器英文.json 文件配置

根据自己路径修改"miDebuggerPath"

{
   "version": "0.2.0",  
   "configurations": [  
       {  
           "name": "(gdb) Launch", // 配置名称,将会在启动配置的下拉菜单中显示  
           "type": "cppdbg",       // 配置类型,这里只能为cppdbg  
           "request": "launch",    // 请求配置类型,可以为launch(启动)或attach(附加)  
           "program": "${workspaceFolder}/exe/${fileBasenameNoExtension}.exe",// 将要进行调试的程序的路径  
           "args": [],             // 程序调试时传递给程序的命令行参数,一般设为空即可  
           "stopAtEntry": false,   // 设为true时程序将暂停在程序入口处,一般设置为false  
           "cwd": "${workspaceFolder}", // 调试程序时的工作目录,一般为${workspaceFolder}即代码所在目录  
           "environment": [],  
           "externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台  
           "MIMode": "gdb",  
           "miDebuggerPath": "D:/MinGW/bin/gdb.exe", // miDebugger的路径,注意这里要与MinGw的路径对应  
           "preLaunchTask": "g++", // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc  
           "setupCommands": [  
               {   
           "description": "Enable pretty-printing for gdb",  
                   "text": "-enable-pretty-printing",  
                   "ignoreFailures": true  
               }  
           ]  
       }  
   ]  
}
  • tasks.j矢量数据格式son

直接复制粘贴就行了,不用修改,我c#委托把生成的exe文件单独放到exe文件夹中

{
    "version": "2.0.0",
    "command": "g++",
    "args": [
        "-g",
        "${file}",
        "-o",
        "${workspaceFolder}/exe/${fileBasenameNoExtension}.exe"
    ], // 编译命令参数
    "problemMatcher": {
        "owner": "cpp",
        "fileLocation": [
            "relative",
            "\\"
        ],
        "pattern": {
            "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
            "file": 1,
            "line": 2,
            "column": 3,
            "severity": 4,
            "message": 5
        }
    }
}

这里解释一下args中自定义 exe文件存放路径:
${workspaceFoJsonlder}: 当前工作路径
exe: 自己建的文件夹
${fc语言编译器ileBas数据格式怎么设置ename数据格式转换NoExtension}: 当前文件的文件名,NoExtension意思就是不带后缀名,然后加个 .exe 就面板数据格式是当前的exe文件,也就是编译生成的 exe 文件
上述路径放一起意思就编译生成的 exe 文件放c语言编译器在exe文件夹中, 把这条配置删除的话,编译生成Json的exe文件就默认放在了当前工作路径下。

顺便说Json一下 vscode 中一些变量代表什么意思
${workspaceFolder} :表示当前workspace文件夹路径,也即/home/Coding/Test
${workspaceRootFolderName}:表示workspace的文件夹名,也即Test
${file}:文件自身的绝对路径,也即/home/Cod栅格数据格式ing/c语言软件Test/.vscode/tasks.json
${rel栅格数据格式ativeFile}:文件在workspace中的路径,也即.vc语言基础知识scode/tasks.json
${fileBasenameNoEx编译器和编辑器tension}:当前文件的文件名,不带后缀,也即tasks
${fileBasename}:当前文件的文件名,tas编译器和编辑器的区别ks.json
${fileDirname}:文件所在的文件夹路径,也即/home/Coding/Test/.vscode
${fileExtname}:当前文件的后缀,也即.json
${lineNumber}:当前文件光标所在的行号
${env:PATH}:系统中的环境变量