Visual Studio Code C++环境搭建

之前一直用 Visual Studio 2013 写 C++。 后面电脑重装之后,就没有环境了。 这次换成 Visual Studio Code + MinGW的模式试试。

安装 Visual Studio Code

前往官网下载安装包,然后一路 next 安装就行。

安装编译器:MinGW

在线安装

MinGW官网进行下载安装。点击下载,选择好安装路径(如C:)。

如果你网速不好的话,那你就需要看我的这一篇文章。

离线安装

链接: https://pan.baidu.com/s/1278b39kz585Q9Fw27IYbGw 提取码: idda

解压之后放置到安装目录(如C:)即可。

配置环境变量

鼠标右键“我的电脑”->“属性”,选择“高级”选项卡下的“环境变量”,在系统变量里点“新建”,之后填写MinGW的安装路径,如下:

1
2
变量名:MinGW
变量值:D:\Environment\MinGW

之后找到Path,在最前面添加下面这段声明%MinGW%\bin,之后点击确定。

检查是否安装成功

1
2
3
4
5
6
7
8
9
10
11
12
13
C:\Users\Tommy>gcc -v
Using built-in specs.
Target: i686-w64-mingw32
Configured with: ../gcc44-svn/configure --target=i686-w64-mingw32 --host=i686-w64-mingw32 --disable-multilib --disable-nls --disable-win32-registry --prefix=/mingw32 --with-gmp=/mingw32 --with-mpfr=/mingw32 --enable-languages=c,c++
Thread model: win32
gcc version 4.4.3 (GCC)

C:\Users\Tommy>g++ -v
Using built-in specs.
Target: i686-w64-mingw32
Configured with: ../gcc44-svn/configure --target=i686-w64-mingw32 --host=i686-w64-mingw32 --disable-multilib --disable-nls --disable-win32-registry --prefix=/mingw32 --with-gmp=/mingw32 --with-mpfr=/mingw32 --enable-languages=c,c++
Thread model: win32
gcc version 4.4.3 (GCC)

安装C++编辑器插件

在vscode的插件搜索输入框输入“C++”,搜索插件“C/C++ for Visual Studio Code”。点击install安装插件。

工作空间配置文件

建立一个空文件夹,新建 .vscode 文件。

文件下建立三个配置文件,文件名和内容分别为下面三个。

  • launch.json 注意 修改miDebuggerPath为你自己的路径
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{  
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch", // 配置名称,将会在启动配置的下拉菜单中显示
"type": "cppdbg", // 配置类型,这里只能为cppdbg
"request": "launch", // 请求配置类型,可以为launch(启动)或attach(附加)
"program": "${workspaceFolder}/${fileBasenameNoExtension}.exe",// 将要进行调试的程序的路径
"args": [], // 程序调试时传递给程序的命令行参数,一般设为空即可
"stopAtEntry": false, // 设为true时程序将暂停在程序入口处,一般设置为false
"cwd": "${workspaceFolder}", // 调试程序时的工作目录,一般为${workspaceFolder}即代码所在目录
"environment": [],
"externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台
"MIMode": "gdb",
"miDebuggerPath": "C:\\MinWG\\bin\\gdb.exe", // miDebugger的路径,注意这里要与MinGw的路径对应
"preLaunchTask": "g++", // 调试会话开始前执行的任务,一般为编译程序,c++为g++, c为gcc
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
}
]
}
  • tasks.json 注意修改你的command和cwd为你自己的路径
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "g++", //这里注意一下,见下文
"command": "C:\\MinWG\\bin\\g++.exe",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe",
"-ggdb3", // 生成和调试有关的信息
"-Wall", // 开启额外警告
"-static-libgcc", // 静态链接
"-std=c++17", // 使用c++17标准
"-finput-charset=UTF-8", //输入编译器文本编码 默认为UTF-8
"-fexec-charset=GB18030", //输出exe文件的编码
"-D _USE_MATH_DEFINES"
],
"options": {
"cwd": "C:\\MinWG\\bin"
},
"problemMatcher": [
"$gcc"
],
"presentation": {
"echo": true,
"reveal": "always", // 在“终端”中显示编译信息的策略,可以为always,silent,never
"focus": false,
"panel": "shared" // 不同的文件的编译信息共享一个终端面板
},
}
]
}
  • c_cpp_properties.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
"configurations": [
{
"name": "MinGW64",
"intelliSenseMode": "gcc-x64",
"compilerPath": "C:\\MinWG\\bin\\g++.exe",
"includePath": [
"${workspaceFolder}"
],
"cppStandard": "c++17"
}
],
"version": 4
}

Hello World

.vscode 文件同层目录下,新建一个 test.cpp,然后F5调试运行即可。

1
2
3
4
5
6
#include<iostream>
using namespace std;
int main(){
cout << "Hello World" << endl;
system("pause");
}


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!