Компиляция и отладка VSCode C / C ++

  оглавление

Во-первых, установите плагин VSCode

1.1 Установите китайский плагин

1.2 Установите плагин C / C ++

2. Установите программный пакет в Linux.

2.1 Установите gcc-c ++

2.2 Установите gdb 

В-третьих, настройте VSCode

3.1 Конфигурация компиляции

3.2 конфигурация отладки

Четыре, отладка

4.1 Написание кода

4.2 отладка

Пять, резюме

6. Ссылка на ссылку


В системах Linux для отладки C / C ++ обычно используется gdb, но использование gdb не так интуитивно понятно, и нужно запомнить множество команд. Эта статья знакомит с VSCode для отладки программ на C / C ++, который действительно является очень полезным редактором.

Во-первых, установите плагин VSCode

1.1 Установите китайский плагин

Откройте VSCode, установите языковой плагин в VSCode, нажмите <Extensions> слева, введите китайский и нажмите «Установить», как показано на следующем рисунке:

1.2 Установите плагин C / C ++

По-прежнему в расширении введите C, выберите установку C / C ++, как показано на следующем рисунке:

2. Установите программный пакет в Linux.

2.1 Установите gcc-c ++

В этой статье Linux использует CentOS 8, установите gcc-c ++ и выполните следующие команды.

[root@bogon debug-C++]# yum install gcc-c++

2.2 Установите gdb 

Поскольку gdb используется в фоновом режиме, установите gdb следующим образом:

[root@bogon debug-C++]# yum install gdb

В-третьих, настройте VSCode

3.1 Конфигурация компиляции

Щелкните в строке меню <terminal>, <configuration task>, <use template to create tasks.json>, <Others>, как показано на рисунке ниже:

Появится файл конфигурации json для tasks.json. После перенастройки tasks.json он выглядит так:

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "label": "debug-C++",   // 任务名称
            "type": "shell",        // 表示使用 shell 命令执行
            "command": "g++",       // 实际执行的命令
            "args": [               // 实际执行命令的参数,使用逗号分隔
                "-g",               // -g 参数表示添加 debug 信息
                "-o",               // -o 指定输出文件名称
                "main",             // 输出文件名称
                "main.cpp"          // 源文件
            ]
        }
    ]
}

После завершения добавления вы увидите, что в каталоге ".vscode" в разделе Explorer слева есть дополнительный файл tasks.json, как показано на следующем рисунке:

3.2 конфигурация отладки

Щелкните в строке меню <Терминал>, <Добавить конфигурацию>, <C ++ (GDB / LLDB)>, как показано на рисунке ниже:

PS: Если возникает следующая ошибка, сначала сгенерируйте исполняемый файл с отладочной информацией, используйте мышь, чтобы выбрать исполняемый файл, а затем выполните его.

Cannot read property 'includes' of undefined

Затем появится файл launch.json, как показано ниже после перенастройки:

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "debuge test",                  // 名称
            "type": "cppdbg",                       
            "request": "launch",
            "program": "${workspaceFolder}/main",   //可执行文件的位置  ${workspaceFolder}:当前目录
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "为 gdb 启用整齐打印",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": true
                }
            ],
            "preLaunchTask": "debug-C++"           // 重要:在调试之前启动的任务名称
        }
    ]
}

После указанной выше настройки все работы по настройке завершены.

Четыре, отладка

4.1 Написание кода

Здесь намеренно написано немного сложнее, а именно:

#include <iostream>
using namespace std;

void function1(int i, int j) {
    cout<<"function1"<<endl;
    cout<<"i = "<<i<<" j = "<<j<<endl;
}

int main() {
    int i = 1;
    int j = 2;
    function1(i, j);
    cout<<"Hello, World!"<<endl;
    i = 3;
    j = 5;
    function1(i, j);
    cout<<"Hello, World!"<<endl;
    return 0;
}

4.2 отладка

Нажмите F5 (или щелкните строку меню <Выполнить>, <Начать отладку>), как показано на рисунке ниже:

Среди них переменные, мониторы, стеки вызовов и точки останова могут отображаться слева, а кнопки на правой горизонтальной панели: «Продолжить», «Шаг с обходом», «Пошаговая отладка», «Шаг с выходом», «Перезагрузка» и «Остановить». 

Пять, резюме

После вышеуказанных шагов вы можете отлаживать программы C / C ++ через VSCode, попробуйте прямо сейчас!

6. Ссылка на ссылку

[1]  https://code.visualstudio.com/docs/editor/tasks#vscode

[2]  https://code.visualstudio.com/docs/editor/debugging#_launch-configurations

 

рекомендация

отblog.csdn.net/u011074149/article/details/109829424