系统配置
- WIN10 64位
- 已安装 VS Code 1.63.2
操作过程
1. VS Code 扩展插件安装
- VS Code软件中打开左侧 扩展商店(extensions) 图标;
- 搜索 C++;
- 点击 安装(install);[未安装时,图中红框应为 install 点击按钮]
- 安装完成后重启VS Code。
2. MinGW 编译器下载安装
MinGW-w64——著名C/C++编译器GCC的Windows版本
下载地址:https://osdn.net/projects/mingw/downloads/68260/mingw-get-setup.exe/
- 打开网页后会自动弹窗下载,或手动点击下载。
- 打开 mingw-get-setup.exe 进行安装:
- 等待安装完成,点击 Continue。
下载安装相关文件
- 勾选相关编译器软件;
- mingw32-gcc-bin(c语言文件编译器)
- mingw32-gcc-g++ -bin(c++语言编译器)
- mingw32-gdb-bin(调试编译后文件)
-
点击菜单栏 Installation > applychange,等待安装完成。
配置环境变量 -
快捷键 win+R 后,输入sysdm.cpl,然后回车;
-
将安装目录下的 bin 文件夹加入到用户变量和系统变量的 PATH 当中;
在环境变量中分别在用户变量和系统变量选择 PATH, 点击编辑 后新建加入bin地址
-
检测mingw安装结果;
快捷键 win+R 后,输入cmd,然后回车;
输入相关指令 gcc、g++,出现如图所示的结果即为安装成功。
3. 在VS Code中搭建C/C++环境
- 新建一个文件夹 (D:\VSCode_C,可自定义) 用于存放代码文件
- 用VS Code 打开该文件夹,并新建一个 .vscode 文件夹
- 在 .vscode 文件夹中创建三个json配置文件
- c_cpp_properties.json
- launch.json
- tasks.json
- 对三个json文件进行配置 (将以下代码分别拷入其中,并进行相应的修改)
c_cpp_properties.json 【“compilerPath” 需注意对应自己安装的路径】
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"compilerPath": "E:/MinGW/bin/g++.exe", //应对应编译器的安装路径
"cStandard": "c17",
"cppStandard": "c++17",
"intelliSenseMode": "gcc-x64"
}
],
"version": 4
}
launch.json 【“miDebuggerPath” 需注意对应自己安装的路径】
{
"version": "0.2.0",
"configurations": [{
"name": "cpp.exe - 生成和调试活动文件", // 配置名称,可自定义
"type": "cppdbg", // 配置类型,对于C/C++可认为此处只能是cppdbg,由cpptools提供;不同编程语言不同
"request": "launch", // 可以为launch(启动)或attach(附加)
"program": "C:\\Windows\\System32\\cmd", // 将要进行调试的程序的路径
"args": [
"/C",
"${workspaceFolder}\\.exe\\${fileBasenameNoExtension}.exe",
"&",
"pause"
], // 程序调试时传递给程序的命令行参数,一般设为空
"stopAtEntry": false, // 设为true时程序将暂停在程序入口处,相当于在main上打断点
"cwd": "${workspaceFolder}", // 调试程序时的工作目录,此为工作区文件夹;改成${fileDirname}可变为文件所在目录
"environment": [], // 环境变量
"externalConsole": true, // 使用单独的cmd窗口,与其它IDE一致;为false时使用内置终端
"internalConsoleOptions": "neverOpen", // 如果不设为neverOpen,调试时会跳到“调试控制台”选项卡,你应该不需要对gdb手动输命令吧?
"MIMode": "gdb", // 指定连接的调试器,可以为gdb或lldb。但我没试过lldb
"miDebuggerPath": "E:/MinGW/bin/gdb.exe", // 调试器路径,Windows下后缀不能省略,Linux下则不要
"setupCommands": [
{ // 模板自带,好像可以更好地显示STL容器的内容,具体作用自行Google
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": false
}
],
"preLaunchTask": "g++ Launch" // 调试前执行的任务,一般为编译程序。与tasks.json的label相对应
}]
}
tasks.json 【“command” 、“cwd” 需注意对应自己安装的路径】
{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "g++ Launch",//任务的名字,就是刚才在命令面板中选择的时候所看到的,可以自己设置
"command": "E:/MinGW/bin/g++.exe", // //这里就输入minGW bin目录下g++.exe 路径
"args": [ //编译时候的参数
"-g", //添加gdb调试选项
"${file}",
"-o", //指定生成可执行文件的名称
"${workspaceFolder}\\.exe\\${fileBasenameNoExtension}.exe",
"-std=c++11" //编译标准c++11
],
"options": {
"cwd": "E:\\MinGW\\bin" //这里就输入minGW bin目录的绝对路径
},
"problemMatcher": [
"$gcc"
],
"group":{
"kind": "build",
"isDefault": true //表示快捷键Ctrl+Shift+B可以运行该任务
}
}
]
}
- 在之前建立的VSCode_C文件夹下新建 .exe 文件夹用于存放编译生成的可执行文件;
【这与 launch.jason 配置中 “args” 的第二个参数设置相关】
4. 测试代码运行
- 在任意位置新建(C/C++)代码文件并在VS Code中按 F5 进行运行测试。
test.c (C代码)
#include <stdio.h>
int main()
{
printf("Hello, World! \n");
return 0;
}
test.cpp (C++代码)
#include <iostream>
using namespace std;
int main()
{
cout << "Hello World\n";
return 0;
}
实测经以上步骤配置环境后,能够成功在VS Code中对C/C++代码进行编译运行。
参考链接:
https://blog.youkuaiyun.com/Zhouzi_heng/article/details/115014059
https://www.jianshu.com/p/44cd1ce7df12
PS:如有讲解不清晰或者错误的地方,欢迎各位指正!