vscode 配置 C/C++编译环境(完整教程)

下面是“vscode配置C/C++编译环境(完整教程)”的完整攻略:

一、安装vscode和MinGW-w64

1.安装vscode

vscode是一款非常流行的编辑器,使用非常方便,可以在官网 https://code.visualstudio.com/ 下载最新版的安装包进行安装。安装完成后,打开vscode,在左侧菜单栏中搜索并安装“C/C++”插件。

2.安装MinGW-w64

MinGW-w64是一款Windows上的GNU C/C++编译器。可以在官网 https://sourceforge.net/projects/mingw-w64/ 下载最新版的安装包进行安装。在安装过程中,需要选择对应的架构和版本,并添加到环境变量中。

二、配置vscode

1.创建C/C++项目

在vscode中,可以通过创建文件夹并打开文件夹的方式来创建一个C/C++项目。在文件夹中创建一个.h或.cpp文件即可。这里我们以创建一个helloworld例子为例。

2.配置tasks.json

在项目的 .vscode 目录下新建 tasks.json 文件,并将以下代码复制粘贴到文件中:

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "build",
            "type": "shell",
            "command": "g++ *.cpp -o main -std=c++11 -g",
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "problemMatcher": "$gcc"
        }
    ]
}

该代码中,我们定义了一个名为“build”的task,用于编译C++代码。其中,g++命令为编译命令,*.cpp为所有.cpp文件,-o main为输出文件名,-std=c++11为C++语言版本,-g为开启调试信息。

3.配置launch.json

在项目的 .vscode 目录下新建 launch.json 文件,并将以下代码复制粘贴到文件中:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) Launch",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/main.exe",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerPath": "gdb",  
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "build"
        }
    ]
}

该代码中,我们定义了一个名为(gdb) Launch的启动配置,用于启动C++程序,并开启gdb调试。其中,program为启动的程序名,cwd为工作目录。

4.运行和调试

在vscode中,可以按下F5键启动程序,并进入gdb调试模式。在调试模式下,可以设置断点、单步执行、查看变量值等操作。

三、示例说明

示例一

下面是一个C++的helloworld程序,用于输出“Hello, World!”到屏幕上。

#include <iostream>

using namespace std;

int main()
{
    cout << "Hello, World!" << endl;
    return 0;
}

在vscode中,将该代码保存为helloworld.cpp文件,并按下F5键。程序将会编译并运行,并在控制台输出“Hello, World!”。

示例二

下面是一个C++的排序程序,用于对数组进行排序。

#include <iostream>
#include <algorithm>

using namespace std;

int main()
{
    int arr[] = {4, 2, 1, 3, 5};
    int n = sizeof(arr) / sizeof(arr[0]);
    sort(arr, arr + n);
    for (int i = 0; i < n; i++)
    {
        cout << arr[i] << " ";
    }
    cout << endl;
    return 0;
}

在vscode中,将该代码保存为sort.cpp文件,并按下F5键。程序将会编译并运行,并在控制台输出排序后的数组内容。在vscode的调试模式下,可以设置断点、单步执行、查看变量值等操作,方便调试。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vscode 配置 C/C++编译环境(完整教程) - Python技术站

(0)
上一篇 2023年5月23日
下一篇 2023年5月23日

相关文章

  • 如何修复Win11/10坏图像错误0xc0000020?

    当Win11/10出现坏图像错误0xc0000020时,可能是由于您的显卡驱动程序损坏或未正确安装。下面是完整的修复步骤: 步骤1:重新安装显卡驱动程序 1.打开设备管理器,展开“显示适配器”选项。 2.右击显示适配器,选择“卸载设备”。 3.下载并安装最新版本的显卡驱动程序,可以在厂商官网下载。 4.安装完成后,重启计算机,检查错误是否消失。 步骤2:运行…

    C 2023年5月23日
    00
  • 常用的C语言编程工具汇总

    常用的C语言编程工具汇总 概述 C语言是一种非常流行的高级编程语言,开发者们常常使用各种工具来编写、调试、测试他们的C代码。在这里我们进行简单的介绍,列出一些主要的C语言编程工具及其用途。 编辑器 编辑器是C语言编程过程中最基本的工具之一。通常用来编写代码。常用的C语言编辑器有: 1. Visual Studio Code Visual Studio Cod…

    C 2023年5月23日
    00
  • C/C++ 中extern关键字详解

    C/C++ 中extern关键字详解 在 C/C++ 中,extern 是一个很常见的关键字,常用于声明全局变量或函数。本文将对 extern 关键字进行详细讲解。 1. 变量声明 当在多个源文件中引用同一全局变量时,需要在其中一个源文件中定义该全局变量,然后在其它源文件中使用 extern 关键字声明该变量。这样确保了在多文件编译时,每个文件都将引用同一变…

    C 2023年5月23日
    00
  • 贪吃蛇游戏C++命令行版实例代码

    我们来详细讲解“贪吃蛇游戏C++命令行版实例代码”的完整攻略。 1. 程序结构 在开始编写代码前,我们需要先了解程序的结构。程序需要实现以下功能: 初始化游戏地图。 生成蛇,并初始化蛇头、蛇身方向等信息。 随机生成食物。 判断蛇是否撞到了边界或者自身,以及是否吃到了食物。 更新蛇的位置。 更新游戏地图并在命令行中显示。 基于上述功能,我们可以将程序结构设计为…

    C 2023年5月24日
    00
  • C++控制台用定时器实例代码

    下面我来详细讲解一下在C++控制台中使用定时器的攻略。在实现这一过程中,我们需要按照以下步骤进行: 导入头文件 首先,我们需要在程序中导入头文件 Windows.h #include <Windows.h> 该头文件中定义了控制台运行的一些基本函数,其中就包含了我们需要使用的定时器函数。 创建定时器 使用 SetTimer() 函数创建一个定时器…

    C 2023年5月24日
    00
  • 学习C++编程的必备软件

    下面我将为您详细讲解“学习C++编程的必备软件”的完整攻略。 学习C++编程的必备软件 1. C++编译器 C++编译器是你学习编程时必备的工具之一。编译器负责将写好的C++程序翻译成机器可以理解的语言,让计算机可以运行它。以下是几个常用的C++编译器: Visual Studio:Visual Studio是一个非常强大的开发环境,附带了C++编译器和许多…

    C 2023年5月23日
    00
  • C++实现线程池的简单方法示例

    关于”C++实现线程池的简单方法示例”,我们可以以下步骤进行: 步骤1:了解线程池的概念 线程池是一种多线程处理形式,为了避免反复地创建和销毁线程带来的系统开销,为了使线程能够得到复用,提高代码的效率和稳定性。线程池所要做的工作就是控制线程的数量、保证任务的异步执行和线程安全。 步骤2:实现线程池 在实现线程池时,需要考虑以下几个方面: 2.1 任务队列 线…

    C 2023年5月22日
    00
  • C++实现截图截屏的示例代码

    下面是“C++实现截图截屏的示例代码”的详细攻略: 一、使用Windows API Windows API提供了一系列函数来实现截图截屏的功能。其中,最常用的是BitBlt函数。以下是示例代码: #include <Windows.h> #include <iostream> int main() { // 获取屏幕DC HDC hd…

    C 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部