оглавление
Во-первых, установите плагин VSCode
1.1 Установите китайский плагин
1.2 Установите плагин C / C ++
2. Установите программный пакет в Linux.
В системах 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