下面是Visual Studio Code配置C/C++文件debug调试环境的详细过程:
安装必要的软件
在开始配置之前,需要先安装以下软件:
- Visual Studio Code:用于代码编辑和调试
- MinGW:用于编译C/C++代码
- C/C++插件:用于在Visual Studio Code中编写C/C++代码
配置调试环境
-
打开Visual Studio Code,新建一个C/C++文件。
-
点击菜单栏的“调试”按钮,选择“创建配置文件”。
-
在弹出的选择框中,选择“C++”。
-
在出现的launch.json文件中,修改以下字段:
-
"program": "${file}.exe"
:指定需要调试的程序,这里使用${file}.exe
表示以当前文件名为程序名。 -
"MIMode": "gdb"
:指定使用gdb作为后台调试器。 -
"miDebuggerPath": "D:\\MinGW\\bin\\gdb.exe"
:设置gdb的路径。 -
"setupCommands": [ { "description": "启用gdb的内建源码路径解析功能", "text": "-enable-pretty-printing", "ignoreFailures": true } ]
:启用gdb的内建源码路径解析功能。
-
一个简单的launch.json示例:
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) 启动",
"type": "cppdbg",
"request": "launch",
"program": "${file}.exe",
"args": [],
"stopAtEntry": true,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "D:\\MinGW\\bin\\gdb.exe",
"preLaunchTask": "build",
"setupCommands": [ { "description": "启用gdb的内建源码路径解析功能", "text": "-enable-pretty-printing", "ignoreFailures": true } ],
"miDebuggerArgs": "-cd=${workspaceFolder}"
}
]
}
- 配置tasks.json文件,用于编译C/C++代码。
打开Visual Studio Code的“终端”窗口,输入Ctrl+Shift+P
打开“命令面板”,输入“任务:配置默认生成任务”,选择“创建任务文件-其他”选项,再选择“创建tasks.json文件”。
在出现的tasks.json文件中,修改以下字段:
- `"command": "gcc", "args": ["-g", "${file}", "-o", "${file}.exe"]`:编译C/C++代码。
一个简单的tasks.json示例:
{
"version": "2.0.0",
"tasks": [
{
"label": "build",
"type": "shell",
"command": "gcc",
"args": [
"-g",
"${file}",
"-o",
"${file}.exe"
],
"group": "build",
"problemMatcher": "$gcc"
}
]
}
-
点击菜单栏的“运行”按钮,选择“运行无调试”,编译并运行程序。
-
点击菜单栏的“调试”按钮,选择“启动调试”,启动调试器。
此时可在Visual Studio Code的“调试控制台”窗口中输入程序的运行参数,并开始进行调试。
示例说明
以下是两个示例,用于说明Visual Studio Code配置C/C++文件debug调试环境的详细过程。
示例一:
需求:编写一个程序,实现输入两个整数并求和的功能,使用Visual Studio Code进行调试。
- 在Visual Studio Code中新建一个C++文件,输入以下代码:
#include<iostream>
using namespace std;
int main()
{
int a,b;
cin>>a>>b;
cout<<"a+b="<<a+b<<endl;
return 0;
}
-
点击菜单栏的“调试”按钮,选择“创建配置文件”,在出现的弹框中选择“C++”。
-
在生成的launch.json文件中,修改以下字段:
-
"program": "${file}.exe"
:指定需要调试的程序,这里使用${file}.exe
表示以当前文件名为程序名。 -
"miDebuggerPath": "D:\\MinGW\\bin\\gdb.exe"
:设置gdb的路径。
-
-
配置tasks.json文件,用于编译C++代码。
在出现的tasks.json文件中,修改以下字段:
- `"command": "g++", "args": ["-g", "${file}", "-o", "${file}.exe"]`:编译C++代码。
-
点击菜单栏的“运行”按钮,选择“运行无调试”,编译并运行程序。程序运行后会等待用户输入两个整数,输入完毕后回车即可。
-
点击菜单栏的“调试”按钮,选择“启动调试”,启动调试器。
-
此时Visual Studio Code会停在第一行代码处,可以在调试控制台中输入
10 20
回车,程序会输出a+b=30
。
示例二:
需求:编写一个程序,实现随机生成10个1~100之间的整数并进行排序的功能,使用Visual Studio Code进行调试。
- 在Visual Studio Code中新建一个C文件,输入以下代码:
#include<stdio.h>
#include<stdlib.h>
#define maxsize 10
int main()
{
int a[maxsize];
int i,j,tmp;
for(i=0;i<maxsize;i++)
a[i]=rand()%100+1;
printf("随机生成的数字为:\n");
for(i=0;i<maxsize;i++)
printf("%d ",a[i]);
printf("\n");
for(i=0;i<maxsize-1;i++)
{
for(j=0;j<maxsize-i-1;j++)
{
if(a[j]>a[j+1])
{
tmp=a[j];
a[j]=a[j+1];
a[j+1]=tmp;
}
}
}
printf("排序后的数字为:\n");
for(i=0;i<maxsize;i++)
printf("%d ",a[i]);
printf("\n");
return 0;
}
-
点击菜单栏的“调试”按钮,选择“创建配置文件”,在出现的弹框中选择“C++”(因为没有C的选项,这里以C++选项为例)。
-
在生成的launch.json文件中,修改以下字段:
-
"program": "${file}.exe"
:指定需要调试的程序,这里使用${file}.exe
表示以当前文件名为程序名。 -
"miDebuggerPath": "D:\\MinGW\\bin\\gdb.exe"
:设置gdb的路径。
-
-
配置tasks.json文件,用于编译C代码。
在出现的tasks.json文件中,修改以下字段:
- `"command": "gcc", "args": ["-g", "${file}", "-o", "${file}.exe"]`:编译C代码。
-
点击菜单栏的“运行”按钮,选择“运行无调试”,编译并运行程序。
-
点击菜单栏的“调试”按钮,选择“启动调试”,启动调试器。
-
此时Visual Studio Code会停在第一行代码处,可以在调试控制台中单步执行程序,查看程序的运行过程和输出结果。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Visual Studio Code 配置C、C++ 文件debug调试环境的详细过程 - Python技术站