0 写在开始
用vs code搭建c++环境主要用到两个工具,vs code和mingw-w64,之前看过一些教程给的下载链接有的被改了,有的因为版本太老安装链接已经失效了。所以还是建议大家直接在网上搜一下下载最新的吧。
1 准备工作
- 下载VS Code
-
①百度搜索vs code
-
②选中windows版本下载
- 下载MinGW-w64
-
①百度搜索mingw w64
-
②进去之后点Download
-
③选择MingW-w64
-
④点击Sourceforce进入下载链接并等待下载结束
2 配置MinGW-w64
-
①安装过程中有一个地方需要选一下。Version用最新的,其它的按照套路来设置吧。安装路径要记住。
-
②配置环境变量
在桌面上此电脑,点击右键-->属性-->高级系统设置-->环境变量-->系统变量中选择Path,把路径填进去。注意,路径的话是到bin目录,比如此处我填写的是D:\ProgrammingTools\mingw-w64\x86_64-8.1.0-win32-seh-rt_v6-rev0\mingw64\bin
- ③查看是否配置成功
打开cmd,输入g++ -v(gcc -v, gdb -v),看一下能不能打印出来一坨版本信息,能打印出来就ok了。
3 配置vs code
- ①安装vs code。都是默认,没什么好说的。
-
②中文插件。打开vs code之后按照下图步骤操作,然后重启一下就可以了。
-
③c++插件。还是这个位置,搜c++把插件安装上。
4 准备调试
- ①在桌面新建一个文件夹test。
- ②把test添加进项目。
在菜单栏点击文件,选择将文件夹添加到工作区。把test文件夹添加进来。 -
③新建一个test.cpp。
-
④随便写一点代码。
-
⑤菜单栏点击运行,选择启动调试。都选择第一个就可以了。
-
⑥会自动生成一个launch.json,注意一下这个路径是不是mingw的路径。如果没生成的话手动添加一下,代码在文末。
-
⑦回到test.cpp文件,重新启动调试。就能运行起来了。下方终端会有输出,也可以编译完成之后到test文件夹下执行text.exe。
-
⑧tasks.json。详见下方代码,记得修改路径。
-
⑨c_cpp_properties.json。详见下方代码,记得修改路径。
5 json代码
- ①launch.json
{
// 使用 IntelliSense 了解相关属性。
// 悬停以查看现有属性的描述。
// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "g++.exe - 生成和调试活动文件",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "D:\\ProgrammingTools\\mingw-w64\\x86_64-8.1.0-win32-seh-rt_v6-rev0\\mingw64\\bin\\gdb.exe",
"setupCommands": [
{
"description": "为 gdb 启用整齐打印",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "C/C++: g++.exe build active file"
}
]
}
- ②tasks.json
{
// 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": "D:\\ProgrammingTools\\mingw-w64\\x86_64-8.1.0-win32-seh-rt_v6-rev0\\mingw64\\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": "D:\\ProgrammingTools\\mingw-w64\\x86_64-8.1.0-win32-seh-rt_v6-rev0\\mingw64\\bin"
},
"problemMatcher": [
"$gcc"
],
"presentation": {
"echo": true,
"reveal": "always", // 在“终端”中显示编译信息的策略,可以为always,silent,never
"focus": false,
"panel": "shared" // 不同的文件的编译信息共享一个终端面板
},
}
]
}
- ③c_cpp_properties.json
{
"configurations": [
{
"name": "MinGW64",
"intelliSenseMode": "gcc-x64",
"compilerPath": "D:\\ProgrammingTools\\mingw-w64\\x86_64-8.1.0-win32-seh-rt_v6-rev0\\mingw64\\bin\\g++.exe",
"includePath": [
"${workspaceFolder}"
],
"cppStandard": "c++17"
}
],
"version": 4
}