VsCode配置C/C++环境(手把手,学不会打我)

vscode相关插件下载

拓展商店安装相关插件,并设置相关配置 需要安装的插件清单如下:

  • Chinese(Simplified) (简体中文) :汉化,看个人需要

  • C/C++

  • C/C++ Extension Pack

  • C/C++ Themes

  • CMake

  • CMake Tools

其余的插件则看自己喜好,有一款叫做One Dark Pro的主题插件不错

编译器的安装和环境配置

由于 vscode 本身不带 C 语言编译器,我们需要安装一个支持 C 语言的编译器来进行代码的编译和运行。 常见的选择包括 MinGW-w64 和 MSYS2,选择一个即可.笔者这里使用的是MinGW64

MinGW64编译器的安装和环境配置

下载安装好后配置环境变量

直接搜索环境变量,点击编辑系统环境变量

设置好下载的路径后,打开cmd在命令行中输入gcc -v,如果出现版本信息则代表环境变量配置成功

测试代码和调试代码

生成c_cpp_properties.json文件

创建一个测试文件夹,用vscode打开,然后按下f1,找到C/C++:编辑配置(JSON)点进去会发现帮你生成了一个.vscode文件,同时里面还有一个c_cpp_properties.json文件

这个使用的默认即可,如果有问题也可打开C/C++:编辑配置(UI)到里面设置“编译器路径”(写自己的编译器下载路径)以及“IntelliSense 模式”(设为:gcc-x64)

launch.json配置以及tasks.json配置

在.vscode下新建文件launch.json和tasks.json文件

tasks.json告诉vscode如何编译程序

launch.json用于配置调试的设置

launch.json配置

{
    "version": "0.2.0",
    "configurations": [
        { //‘调试(Debug)
            "name": "Debug",
            "type": "cppdbg",
            // cppdbg对应cpptools提供的调试功能;只能是cppdbg
            "request": "launch",
            //这里program指编译好的exe可执行文件的路径,与tasks中要对应
            "program": "${workspaceFolder}\\bin\\${fileBasenameNoExtension}.exe", //(单文件调试)
            //"program": "${workspaceFolder}\\${workspaceRootFolderName}.exe", //(多文件调试)
            "args": [],
            "stopAtEntry": false, // 这里改为true作用等同于在main处打断点
            "cwd": "${fileDirname}", // 调试程序时的工作目录,即为源代码所在目录,不用改
            "environment": [],
            "externalConsole": false, // 改为true时为使用cmd终端,推荐使用vscode内部终端
            "internalConsoleOptions": "neverOpen", // 设为true为调试时聚焦调试控制台,新手用不到
            "MIMode": "gdb",
            "miDebuggerPath": "D:\\mingw64\\bin\\gdb.exe",
            // 指定调试器所在路径,注意间隔是\\,请修改为你的路径
            // 指定调试器所在路径,注意间隔是\\,请修改为你的路径
            // 指定调试器所在路径,注意间隔是\\,请修改为你的路径
            "preLaunchTask": "build" // 调试开始前执行的任务(任务依赖),与tasks.json的label相对应
        }
    ]
}

tasks.json配置

{
    "version": "2.0.0",
    "tasks": [
        {
            //这里构建build任务
            "label": "build",
            "type": "shell",
            "command": "gcc",
            "args": [
                //此处为编译选项
                "${file}",//该(单文件编译)
                //"${workspaceFolder}\\*.c",//(多文件编译)
                "-o",
                //承接上述,把源代码编译为对应exe文件,
                "${workspaceFolder}\\bin\\${fileBasenameNoExtension}.exe",//(单文件编译)
                //"${workspaceFolder}\\${workspaceRootFolderName}.exe",//(多文件编译)
                "-g",
                "-Wall",//获取警告
                "-static-libgcc",
                "-fexec-charset=GBK",//按GBK编码
                "-std=c11"//选择C标准,这里按照你需要的换
            ],
            "group": {
                //把该任务放在build组中
                "kind": "build",
                "isDefault": true
            },
            "presentation": {
                //配置build任务的终端相关
                "echo": true,
                "reveal": "always",
                "focus": false,
                "panel": "new"//为了方便每次都重新开启一个终端
            },
            "problemMatcher": "$gcc"
        },
        {
            //这里配置run任务
            "label": "run",
            "type": "shell",
            "dependsOn": "build",
            "command": "${workspaceFolder}\\bin\\${fileBasenameNoExtension}.exe",//(单文件编译)
            //"command":"${workspaceFolder}\\${workspaceRootFolderName}.exe",//(多文件编译)
            //这里command与前面build中的编译输出对应
            "group": {
                //这里把run任务放在test组中,方便我们使用快捷键来执行程序
                //请人为修改"设置","键盘快捷方式"中的"运行测试任务"为"你喜欢的键位"
                //推荐为"ALT+某个字母键",使用该键来运行程序
                "kind": "test",
                "isDefault": true
            },
            "presentation": {
                //同理配置终端
                "echo": true,
                "reveal": "always",
                "focus": true,
                "panel": "new"
            }
        }
    ]
}

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-21 00:22:01       106 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-21 00:22:01       116 阅读
  3. 在Django里面运行非项目文件

    2024-07-21 00:22:01       95 阅读
  4. Python语言-面向对象

    2024-07-21 00:22:01       103 阅读

热门阅读

  1. Web学习day05

    2024-07-21 00:22:01       29 阅读
  2. 高阶面试-hw算法整理

    2024-07-21 00:22:01       24 阅读
  3. std::bind 简单实验

    2024-07-21 00:22:01       28 阅读
  4. 中电金信:语言服务游戏行业解决方案

    2024-07-21 00:22:01       28 阅读
  5. 数据库之数据类型

    2024-07-21 00:22:01       26 阅读
  6. 代码保存板块

    2024-07-21 00:22:01       29 阅读
  7. Git 代码管理面试59题(一)

    2024-07-21 00:22:01       27 阅读
  8. Kudu节点数规划

    2024-07-21 00:22:01       30 阅读
  9. Emacs

    2024-07-21 00:22:01       26 阅读
  10. 提升 Google 对网站兴趣的关键:颜值与内容并重

    2024-07-21 00:22:01       19 阅读