欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

配置vscode c语言环境

程序员文章站 2022-04-07 17:25:27
...

01 前言

Vscode是什么?

VSCode(Visual Studio Code)是微软于2015年发布的一款开源免费的代码编辑器。许多人认为VSCode是一个IDE,这么说其实是不准确的。IDE(Integrated Development Environment,集成开发环境)是用于提供程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面等工具。常见的IDE有Code::Blocks,Visual Studio,IDEA等。单独的VSCode只能说是一个代码编辑器,但是我们可以借助若干丰富插件实现编译器、调试器等的功能,从这个角度看,VSCode也算是一个IDE。

02 软件准备

官网下载 Vscode软件
安装步骤如下图:
配置vscode c语言环境
配置vscode c语言环境
配置vscode c语言环境

这里不用理会,直接点击下一步即可

配置vscode c语言环境

这里记得在最后一项打上勾!


  • Vscode的界面是英文的,我们需要汉化,下载汉化的扩展即可
    步骤:扩展 -> 在搜索框输入 Chinese -> 选择插件Chinese (Simplified) Language Pack for Visual Studio Code,点击install安装插件 -> 重启Vscode
    如图:
    配置vscode c语言环境

03 下载MinGW 配置环境变量

Ps:由于这个网站得开代理,不然会很慢,在这里给出我已经下载好的64位系统的安装包,https://cyz4531.lanzous.com/i1h6Uegrsje

网站如图:
配置vscode c语言环境

安装的位置随意,不过要特别注意一点,就是安装路径中不能带有中文和空格,也就是文件命名时,不能出现中文和空格


  • 配置环境变量:
    步骤:右击此电脑 -> 属性 -> 高级系统设置 -> 环境变量 -> 找到 path -> 双击进入编辑 -> 把MinGW目录下的bin目录的路径 保存进去(比如我的D:\Vscode\MinGW\MinGW\bin)

  • 验证MinGw的环境变量是否配置成功
    步骤:按下Win+R -> 输入cmd -> 打开命令行之后,输入 gcc -v -> 看到如下图的显示,即为配置成功
    配置vscode c语言环境


04 编写Vscode的配置文件

打开Vscode,新建一个文件夹,命名为Vscode,然后再新建一个.vscode的隐藏文件,然后在该文件夹下新建三个文件,分别为launch.jsontasks.jsonsetting.json

如图:
配置vscode c语言环境

  • 分别把以下代码复制进去即可
  • launch.json -> 该文件负责配置Vscode

注意:"miDebuggerPath" 后面的路径必须得与MinGw下的gdb.exe路径对应,改为你的路径即可

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) Launch", // 配置名称,将会在启动配置的下拉菜单中显示
            "type": "cppdbg", // 配置类型,这里只能为cppdbg
            "request": "launch", // 请求配置类型,可以为launch(启动)或attach(附加)  
            "program": "${workspaceFolder}/${fileBasenameNoExtension}.exe", // 将要进行调试的程序的路径  
            "args": [], // 程序调试时传递给程序的命令行参数,一般设为空即可  
            "stopAtEntry": false, // 设为true时程序将暂停在程序入口处,一般设置为false  
            "cwd": "${workspaceFolder}", // 调试程序时的工作目录,一般为${workspaceFolder}即代码所在目录  
            "environment": [],
            "externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台  
            "MIMode": "gdb",
            "miDebuggerPath": "D:\\Vscode\\MinGW\\MinGW\\bin\\gdb.exe", // miDebugger的路径,注意这里要与MinGw的路径对应  
            "preLaunchTask": "gcc", // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc  
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ]
        }
    ]
}
  • tasks.json -> 该文件告诉Vscode如何构建(编译)程序
{
    // 有关 tasks.json 格式的参考文档:https://go.microsoft.com/fwlink/?LinkId=733558 。
    "version": "2.0.0",
    "tasks": [
        {
            "label": "gcc",
            "type": "shell", // { shell | process }
            // 适用于 Windows 的配置:
            "windows": {
                "command": "gcc",
                "args": [
                    "-g",
                    "\"${file}\"",
                    "-o",
                    "\"${fileDirname}\\${fileBasenameNoExtension}.exe\""
                    // 设置编译后的可执行文件的字符集为 GB2312:
                    // "-fexec-charset", "GB2312"
                    // 直接设置命令行字符集为 utf-8:
                    // chcp 65001
                ]
            },
            // 定义此任务属于的执行组:
            "group": {
                "kind": "build", // { build | test }
                "isDefault": true // { true | false }
            },
            // 定义如何在用户界面中处理任务输出:
            "presentation": {
                // 控制是否显示运行此任务的面板。默认值为 "always":
                // - always:    总是在此任务执行时显示终端。
                // - never:     不要在此任务执行时显示终端。
                // - silent:    仅在任务没有关联问题匹配程序且在执行时发生错误时显示终端
                "reveal": "silent",
                // 控制面板是否获取焦点。默认值为 "false":
                "focus": false,
                // 控制是否将执行的命令显示到面板中。默认值为“true”:
                "echo": false,
                // 控制是否在任务间共享面板。同一个任务使用相同面板还是每次运行时新创建一个面板:
                // - shared:     终端被共享,其他任务运行的输出被添加到同一个终端。
                // - dedicated:  执行同一个任务,则使用同一个终端,执行不同任务,则使用不同终端。
                // - new:        任务的每次执行都使用一个新的终端。
                "panel": "dedicated"
            },
            // 使用问题匹配器处理任务输出:
            "problemMatcher": {
                // 代码内问题的所有者为 cpp 语言服务。
                "owner": "cpp",
                // 定义应如何解释问题面板中报告的文件名
                "fileLocation": [
                    "relative",
                    "${workspaceFolder}"
                ],
                // 在输出中匹配问题的实际模式。
                "pattern": {
                    // The regular expression.
                    "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
                    // 第一个匹配组匹配文件的相对文件名:
                    "file": 1,
                    // 第二个匹配组匹配问题出现的行:
                    "line": 2,
                    // 第三个匹配组匹配问题出现的列:
                    "column": 3,
                    // 第四个匹配组匹配问题的严重性,如果忽略,所有问题都被捕获为错误:
                    "severity": 4,
                    // 第五个匹配组匹配消息:
                    "message": 5
                }
            }
        }
    ]
}
  • setting.json
{
    "files.associations": {
        "tidl_alg_int.h": "c",
        "limits": "c"
    }
}

05 运行程序

新建一个文件,命名为Hello.c,把以下C语言代码复制进去,按F5运行

#include <stdio.h>
int main()
{
    printf("Hello,World!\n");
    return 0;
}

注意:此时会发现有一个黑框一闪而过,然后终端显示“终端将被任务重用,按任意键关闭”,说明你的配置是没问题的,程序已经正常运行了!之所以会一闪而过,没有停留,是因为Vscode不会自己在程序末尾停止,和IDE不一样。

那么有什么办法可以让它不一闪而过,可以停留呢?办法当然是有的!

有三种办法

  • 在最后加一行加上断点
  • 在最后加一行加上getchar()
  • 在最后一行加上system(“pause”);
  • 看个人喜好了,我习惯在末尾加上一行system("pause");代码,程序就会在最后停住了

如图:
配置vscode c语言环境
配置vscode c语言环境
配置vscode c语言环境


闲谈

要想让Vscode成功的运行一个程序,是需要为这个文件夹做单独配置,也就是配置一个完整的.vscode文件,所以建议把.vscode文件夹放到你常用的文件夹的顶层,这样就不用重复配置了,这些配置在你配置好的文件夹内的所有子文件夹和文件都能使用。

如果新建了另一个文件夹存放c语言代码,只需把.vscode文件复制一份,粘贴到该文件夹中即可


当然Vscode还是有很多好用的插件,而且还可以设置背景,可以给你的界面配上一幅美美的背景图哦!关注我,我来告诉你,嘿嘿!个人博客:https://www.cyz4531.top