Vscode配置C/C++环境(详细安装调试)

第一步我们需要下vscode,Vscode简单说一下就是文本编辑器,但是它包含了许多语言以及安装包和链接,所以对于很多程序开发者是最常用的开发软件之一。这里需要进入官网进行下载。

Visual Studio Code - Code Editing. Redefined 这是下载链接,戳进去就是官网,然后点击下载就好,最好用最新版的。然后就是安装路径最好安装到其他盘,很多同行都是喜欢把编程软件这些放在C盘,因为有些确实放其他盘打不开,但是其实还是看软件,像这种方便查找的,可以放找的到的地方。

再下载完了之后。然后我们去安装mingw,这里推荐大家安装包或者去官网,但是一般官网的速度很慢,方便可以找找镜像源,推荐去清华镜像源进行查找然后拷到一个u盘比较好,因为确实下载时间还是有点小久。

第二步我们需要第mingw进行配置,设置环境变量,在设置里面找到环境

然后进入这里

然后点进去双击PATH

然后我们需要对这个进行配置这个路径

新建一个然后把你安装的路径放进去

然后我们检查是否安装成功以及gcc能不能用,打开命令行,win+r,输入cmd(这里最好也是用管理员打开),然后输入如下指令 g++ --version。这样有版本就代表设置成功,不成功就安装流程仔细看看哪里出错了

第三步就是进入vscode进行插件的配置

首先我们需要安装C相关的,有一个扩展搜一下就能找到

还有这个

下面就最重要的vscode配置gcc环境

第四步在你创建的文件里面,去创建一个放json的文件夹

然后再点击左边那个,然后现在需要我们创建4个.json文件,就是如图所示

然后,每个.json放的代码我这边会给出来,其中需要注意的是

首先是c_cpp_properties.json

这里的代码可以copy全部再改,可以明显看到就是includepath这里面的东西是需要手动放进去的

还有就是comlierpath 这里放的是你存mingw bin的位置,格式记得和放的位置一样建议复制。


{
    "configurations": [
      {
        "name": "Win64",
        "includePath": [
          "${workspaceFolder}/**",
          "E:/software/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++",
          "E:/software/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32",
          "E:/software/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward",
          "E:/software/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include",
          "E:/software/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed",
          "E:/software/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"
      ],
        "defines": ["_DEBUG", "UNICODE", "_UNICODE"],
        "windowsSdkVersion": "10.0.18362.0",
        "compilerPath": "E:/software/mingw64/bin/g++.exe",
        "cStandard": "c17",
        "cppStandard": "c++17",
        "intelliSenseMode": "gcc-x64"
      }
    ],
    "version": 4
  }
  
然后是launch.json的代码块

这里也是需要把下面的midebuggerpath给手动配置相对应的路径

{
    "version": "0.2.0",
    "configurations": [
      {
        "name": "(gdb) Launch", 
        "type": "cppdbg", 
        "request": "launch", 
        "program": "${fileDirname}\\${fileBasenameNoExtension}.exe", 
        "args": [], 
        "stopAtEntry": false,
        "cwd": "${workspaceRoot}",
        "environment": [],
        "externalConsole": true, 
        "MIMode": "gdb",
        "miDebuggerPath": "E:\\software\\mingw64\\bingdb.exe",
        "preLaunchTask": "g++",
        "setupCommands": [
          {
            "description": "Enable pretty-printing for gdb",
            "text": "-enable-pretty-printing",
            "ignoreFailures": true
          }
        ]
      }
    ]
  }
然后是settings.json,这个照抄就完事
{
    "files.associations": {
      "*.py": "python",
      "iostream": "cpp",
      "*.tcc": "cpp",
      "string": "cpp",
      "unordered_map": "cpp",
      "vector": "cpp",
      "ostream": "cpp",
      "new": "cpp",
      "typeinfo": "cpp",
      "deque": "cpp",
      "initializer_list": "cpp",
      "iosfwd": "cpp",
      "fstream": "cpp",
      "sstream": "cpp",
      "map": "c",
      "stdio.h": "c",
      "algorithm": "cpp",
      "atomic": "cpp",
      "bit": "cpp",
      "cctype": "cpp",
      "clocale": "cpp",
      "cmath": "cpp",
      "compare": "cpp",
      "concepts": "cpp",
      "cstddef": "cpp",
      "cstdint": "cpp",
      "cstdio": "cpp",
      "cstdlib": "cpp",
      "cstring": "cpp",
      "ctime": "cpp",
      "cwchar": "cpp",
      "exception": "cpp",
      "ios": "cpp",
      "istream": "cpp",
      "iterator": "cpp",
      "limits": "cpp",
      "memory": "cpp",
      "random": "cpp",
      "set": "cpp",
      "stack": "cpp",
      "stdexcept": "cpp",
      "streambuf": "cpp",
      "system_error": "cpp",
      "tuple": "cpp",
      "type_traits": "cpp",
      "utility": "cpp",
      "xfacet": "cpp",
      "xiosbase": "cpp",
      "xlocale": "cpp",
      "xlocinfo": "cpp",
      "xlocnum": "cpp",
      "xmemory": "cpp",
      "xstddef": "cpp",
      "xstring": "cpp",
      "xtr1common": "cpp",
      "xtree": "cpp",
      "xutility": "cpp",
      "stdlib.h": "c",
      "string.h": "c",
      "system_common_package.h": "c",
      "stubs_public.h": "c",
      "loops_package.h": "c",
      "acquisition_package.h": "c",
      "rsc_services_public.h": "c",
      "linker_public.h": "c",
      "systemcharacterization_package.h": "c",
      "osek_package.h": "c",
      "can_public.h": "c",
      "eeprom_package.h": "c",
      "emulated_eeprom_database_public.h": "c",
      "emulated_eeprom_manager_public.h": "c",
      "section_header_public.h": "c",
      "com_package.h": "c",
      "can_diag_intra.h": "c"
    },
    "editor.suggest.snippetsPreventQuickSuggestions": false,
    "aiXcoder.showTrayIcon": true
  }
然后添加tasks.json
{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "g++",
            "command": "g++",
            "args": [
                "-g",
                "${file}",
                "-o",
                "${fileDirname}/${fileBasenameNoExtension}.exe"
            ],
            "problemMatcher": {
                "owner": "cpp",
                "fileLocation": [
                    "relative",
                    "${workspaceRoot}"
                ],
                "pattern": {
                    "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                    "file": 1,
                    "line": 2,
                    "column": 3,
                    "severity": 4,
                    "message": 5
                }
            },
            "group": "build"
        },
        {
            "type": "cppbuild",
            "label": "C/C++: g++.exe 生成活动文件",
            "command": "E:/software/mingw64/bin/g++.exe",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe"
            ],
            "options": {
                "cwd": "E:/software/mingw64/bin"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "调试器生成的任务。"
        }
    ]
}

然后就是我们可以简单创建一个文件夹和这个带有4个.json的文件放在一起。这里最好放在一起,不然你就得在你的新代码文件添加环境的4个文件。

最后我们简单跑跑一个小程序用helloworld验证一下

后面其实还会经常出现对于g++寻找不到,或者说#include找不到请更新inlcudepath的情况,首先就是说先看c_cpp_properties.json的文件

打开终端

输入下面指令

gcc -v -E -x c -

然后把这个放到c_cpp_properties.json的includepath里面去,这里检测出来有多少就放多少。

然后有个就是记得一直常用管理员打开,这个其实很多程序都开着就好

目前对于最新版的vscode不用特别进入settings里面去点,一般都是自动点好了的,有问题可以再去查看。

第五步关于调试

VScode其实就是对于变量的查看以及断点的使用,这里因为vscode的ide集成比较强,我们打开这个,可以看到这个按键

然后可以看到下面的图里,点击一下,如果没有,就点击上面安装的时候的C/C++的扩展

  • 10
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值