Visual Studio Code (vscode) 配置 C / C++ 环境
找了好几天才找到一个完全没问题的,谢天谢地!本人掉过许多坑,下面的配置流程是我成功的唯一一个。特此提醒,一定要按下面的步骤来,不然我也没法子了。
1. 下载Visual Studio Code
下载链接:https://code.visualstudio.com/
2. 在Extensions安装工具
3. 下载mingw
下载地址:https://sourceforge.net/projects/mingw-w64/files/
下载的文件:进入网站后不要点击 “Download Lasted Version”,往下滑,找到最新版的 “x86_64-posix-seh”。
安装mingw:下载一个7z的压缩包,解压后移动到想要安装的位置。
我的安装位置是:C:\mingw64
4. 配置环境变量
按下图顺序来配置环境变量
- 在系统设置中找到
编辑系统环境变量
- 在系统属性界面选择
环境变量
选项
- 选择用户环境变量的
Path
选项,点击右下角的编辑
(用户变量的编辑)
- 在编辑界面点击
新建
选项,之后点击浏览找到之前安装的mingw64
文件夹,选择bin
配置环境变量:在此以win10为例,到达第6步之后,前面打开的窗口都要按下确定,否则会失败。
配置好环境变量后重启一下 Visual Studio Code
验证一下环境变量是否配置成功
按下 win + R,输入cmd,回车键之后输入g++,再回车。
如果提示g++: fatal error: no input files
,则环境变量配置成功。
如果提示'g++' 不是内部或外部命令,也不是可运行的程序或批处理文件
,则环境变量配置失败。
5. 使用简单的.cpp文件配置C++环境
-
在
mingw64
文件夹内创建一个code
文件夹(名字随意)
-
打开vscode --> 打开文件夹 --> 选择刚刚创建的文件夹code
-
新建一个文件,命名为
HelloWorld.cpp
#include<iostream>
using namespace std;
int main(){
cout<<"hello world"<<endl;
return 0;
}
- 进入调试界面添加配置环境,选择
C++(GDB/LLDB)
,再选择g++.exe
,之后会自动生成launch.json
配置文件
上面两张图片来自 https://www.cnblogs.com/bpf-1024/p/11597000.html
- 编辑
launch.json
配置文件
- 路径不同可以更改,其他的不要改动
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "g++.exe - build and debug active file",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"miDebuggerPath": "C:\\mingw64\\bin\\gdb.exe",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "task g++"
}
]
}
- 新建一个文件,命名为
tasks.json
。编辑tasks.json
配置文件
- 路径不同可以更改,其他的不要改动
{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "task g++",
"command": "C:\\mingw64\\bin\\g++.exe",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "C:\\mingw64\\bin"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
launch.json 文件中 “preLaunchTask” 的值 必须与 tasks.json 文件中 "label"的值一致。值的设置看个人喜好,保持默认也可以。
6. 运行
返回 HelloWorld.cpp 文件,按F5调试,成功了!
记得设置断点,不然输出界面容易消失。
补充一下
GCC、gcc、g++之间的区别:
- GCC:GNU Compiler Collection(GUN 编译器集合),它可以编译C、C++、Java等多种语言
- gcc:GCC中的GUN C Compiler(C 编译器)
- g++:GCC中的GUN C++ Compiler(C++编译器)