首页 > 编程语言 > 详细

基于VSCode的C/C++编程语言的构建调试环境搭建指南

时间:2020-04-02 20:02:01      阅读:155      评论:0      收藏:0      [点我收藏+]

0.前言

VS Code是一款支持多种编程语言的跨平台源代码编辑器,正在被越来越多的程序员使用。今天我们介绍一下如何在VS Code上构建C/C++ 的构建、调试环境。

 

1.工具的准备

1.1 VS Code下载

直接去VS Code官网https://code.visualstudio.com/下载与自己系统相对应版本的VS Code。

技术分享图片

 

1.2 编译器下载

VS Code并没有内置编译器,所以想要正常运行代码还需要单独编译器,而我所使用Windows 10系统也没有安装编译器,所以需要单独下载、安装。

可以在这个地址https://sourceforge.net/projects/mingw-w64/files/下载最新版本的x86_64-posix-seh

技术分享图片

下载完成之后解压到自己想要的位置,然后把~/mingw64/bin加入环境变量中的系统变量PATH中。

技术分享图片

添加完成后,win+R并输入cmd运行命令行,输入gcc -v可以看到gcc的版本信息。若提示“不是内部或外部命令”,则说明没有成功把~/mingw64/bin目录加入PATH系统变量中。

技术分享图片

 

1.3 C/C++插件安装

在VS Code的插件中搜索C/C++,安装该插件即可。

技术分享图片

 

1.4 Code Runneran插件安装

使用Code Runner插件可以直接编译运行代码,不需要手动输入指令。可以直接在VS Code拓展中搜索安装。安装过后可以点击右上角的三角符号运行代码,或者Ctrl+Alt+N运行,或者右键—>Run Code运行。

技术分享图片

2. .json文件配置

首先在一个没有中文的路径下创建一个存放代码的目录,也就是工作区文件夹。然后在该目录下创建一个名为.vscode的子文件夹,并在.vscode目录下新建3个.json文件,.json文件具体内容如下。

2.1 launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "C/C++",                                                                  
            "type": "cppdbg",
            "request": "launch",
            "program": "${fileDirname}/${fileBasenameNoExtension}.exe",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerPath": "D:/Program Files/mingw-w64/x86_64-8.1.0-posix-seh-rt_v6-rev0/mingw64/bin/gdb.exe", //这里填写自己gdb所在的路径
            "preLaunchTask": "g++",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
        },
    ]
}

 

2.2 tasks.json

{
    "version": "2.0.0",
    "command": "g++",    //C语言需改成gcc
    "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": {
        "kind": "build",
        "isDefault": true
    }
}

 

2.3 settings.json

{
    "files.defaultLanguage": "c", 
    "editor.formatOnType": true,  
    "editor.suggest.snippetsPreventQuickSuggestions": false, 
    "editor.acceptSuggestionOnEnter": "off", 

    "code-runner.runInTerminal": true, 
    "code-runner.executorMap": {
        "c": "cd $dir && gcc ‘$fileName‘ -o ‘$fileNameWithoutExt.exe‘ -Wall -g -O2 -static-libgcc -std=c11 -fexec-charset=GBK && &‘$dir$fileNameWithoutExt‘",
        "cpp": "cd $dir && g++ ‘$fileName‘ -o ‘$fileNameWithoutExt.exe‘ -Wall -g -O2 -static-libgcc -std=c++17 -fexec-charset=GBK && &‘$dir$fileNameWithoutExt‘"
    }, 
    "code-runner.saveFileBeforeRun": true, 
    "code-runner.preserveFocus": true,     
    "code-runner.clearPreviousOutput": false, 
    "code-runner.ignoreSelection": true,   

    "C_Cpp.clang_format_sortIncludes": true, 
}

 

3.代码调试、运行样例

以一个简单的程序hello.cpp的调试、运行为例。hello.cpp代码如下:

//hello.cpp
#include <iostream>

using namespace std;

int main()
{
    int i,j,k;
    k=0;
    i=3;
    j=4;
    k=i+j;
    cout<<k;
    return 0;
}

在“k=i+j;”行添加断点(直接在该行左侧单击即可),F5进入调试:

技术分享图片

左边栏第一个单元显示变量名及其值,第二个单元可以自定义监视的内容,第三个单元显示调用堆栈。我们这里监视k的值,此时为0。F11进行单步调试:

技术分享图片

 

 可以看到,执行“k=i+j;”后,k值变为7。继续单步执行:

技术分享图片

 

可以看到中断输出7,也就是“cout<<k;”的执行结果。继续F11直至程序结束。

技术分享图片

 

 这样,我们完成了hello.cpp的调试、运行,过程还是很简单的。

基于VSCode的C/C++编程语言的构建调试环境搭建指南

原文:https://www.cnblogs.com/sfnevermore/p/12622081.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!