目录
按照微软官方链接操作,官方链接:Configure Visual Studio Code for Microsoft C++
需要安装的软件:VSCode、VSCode的中文扩展、VSCode的C/C++插件、Visual Studio 2019的构建工具。
一、 安装软件
1.1 安装VSCode+中文插件
VSCode下载链接:Download Visual Studio Code - Mac, Linux, Windows
VSCode及中文插件安装链接参考:VSCode详细安装教程 - 知乎.
我下载的是System Installer 64bit。根据自己电脑系统选择对应文件。
1.2 安装C/C++插件
与安装VSCode的中文插件类似。打开VSCode,然后按Ctrl+Shift+X或者按下图操作,在搜索栏中填写【C/C++】,点击搜索到的第一个插件,点击,在右侧会出现该插件的详细信息,可以看到【安装】按钮,点击即可。 如果已经安装会显示【禁用】和【卸载】。
1.3 安装MSVC工具集
1.3.1 下载
如果已经安装了VS2017及以上版本的VS IDE,转到1.3.3节。
如果没有安装VS2017及以上版本的VS IDE,但是准备安装,安装完成后转到1.3.3节。
如果没有安装VS2017及以上版本的VS IDE,又不想安装完整的IDE,可以只安装VS2019的构建工具(Build Tools for Visual Studio 2019)。
下载链接:Downloads - Visual Studio Subscriptions Portal
可以看到有很多版本的Build Tools for Visual Studio 2019,选择其中一个版本下载。
该页面需要登录后进入,如果显示以下界面,登录即可。
1.3.2 安装
下载完成后双击打开(建议管理员模式),会出现如下提示,
点击【继续】等待直到出现如下界面,选中【C++生成工具】,右侧默认,注意设置【安装位置】,这个位置后面有用,点击安装,要等一段时间(看网速)。安装完成后会提示重启计算机,重启电脑。
1.3.3 检查MSVC编译器
在搜索栏输入【developer】,找到如下,建议以管理员模式打开【Developer Command Prompt for VS 2019】(适用于VS2019的开发人员命令提示符)。
打开之后输入【cl】检查MSVC是否安装成功,出现如下界面表示安装成功。
软件及插件的安装就到这里,打开的【Developer Command Prompt for VS 2019】不要关闭,后面还会用到。
二、 编写代码
通常情况下代码会放在一个指定的目录下,例如放在【E:\VSCode】,那么就要进入该文件夹,命令如下
代码最终存放路径为【E:\VSCode\projects\helloworld】,可以输入如下命令,命令【code .】打开VSCode。
mkdir projects
cd projects
mkdir helloworld
cd helloworld
code .
可能会出现如下提示,点击【是.....】。
可以看到在左侧出现了当前文件夹的名字,点击右边的【新建文件】,输入文件名,双击打开这个文件,就可以编写代码了。
编写如下代码,并保存;也可以设置自动保存,点击【文件】,选择【自动保存】。
#include <iostream>
#include <vector>
#include <string>
using namespace std;
int main()
{
vector<string> msg {"Hello", "C++", "World", "from", "VS Code", "and the C++ extension!"};
for (const string& word : msg)
{
cout << word << " ";
}
cout << endl;
}
三、 编译运行
3.1 配置tasks.json
【tasks.json】文件告诉VSCode如何编译程序。
点击菜单栏的的【终端】--【配置默认生成任务】,弹出如下界面,选择【使用模板创建tasks.json】,选择【MSBuild 执行生成目标】,自动转到tasks.json编辑页面
编辑tasks.json
{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "cl.exe build active file",
"command": "cl.exe",
"args": [
"/Zi",
"/EHsc",
"/Fe:",
"${fileDirname}\\${fileBasenameNoExtension}.exe",
"${file}"
],
"problemMatcher": ["$msCompile"],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
变量和值的含义参考:Visual Studio Code Variables Reference
3.2 编译运行
重新转到【helloworld.cpp】编辑页面,按【Ctrl+Shift+B】或者在菜单栏点击【终端】--【运行生成任务】,在界面下方弹出信息,当如下信息显示后表示编译成功
点击右侧的【+】,新建终端,在新的终端输入【ls】查看当前目录下的文件,输入【./helloworld.exe】运行,输出程序结果
四、 调试
【Launch.json】中编辑与调试相关的信息。
Ⅰ 按【F5】或者点击菜单栏【运行】--【添加配置】,选择【C++(Windows)】,自动跳转到【Launch.json】编辑页面;
编辑内容如下:
{
"version": "0.2.0",
"configurations": [
{
"name": "cl.exe build and debug active file",
"type": "cppvsdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"preLaunchTask": "cl.exe build active file"
}
]
}
需要注意的是
1. 【stopAtEntry】的值,true表示调试时自动在main()函数处暂停运行,false表示不暂停运行,除非你在某处设置了断点。
2. 可能会弹出如下界面,可以把【externalConsole】改为【Console】(不改也可以,但每次调试都会弹出如下提示)
Ⅱ 回到【helloworld.cpp】文件,按【F5】会出现如下界面,左上可以观察所有变量,左下可以观察指定变量,右上是用来调试的,可以看到现在运行到main()函数处。此时就可以调试了。
监视指定变量点击+号,输入变量名后回车即可。
五、 配置C/C++
按【Ctrl+Shift+P】,输入【C/C++】,有两种方式编辑:UI和编辑JSON,最终都是通过JSON文件实现的,点击【编辑配置(JSON)】
转到【c_cpp_properties.json】编辑页面,编辑代码如下
{
"configurations": [
{
"name": "Win32",
"includePath": ["${workspaceFolder}/**"],
"defines": ["_DEBUG", "UNICODE", "_UNICODE"],
"windowsSdkVersion": "10.0.18362.0",
"compilerPath": "C:/Program Files (x86)/Microsoft Visual Studio/2019/BuildTools/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe",
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "msvc-x64"
}
],
"version": 4
}
其中【compilerPath】路径就是前面【Build Tools for Visual Studio 2019】安装的位置下的cl.exe的路径。
以上步骤就可以实现编译运行一个C/C++程序。如果要在新的文件夹中编译运行,只需要把.vscode复制即可。需要注意的是以上操作过程中不要关闭【Developer Command Prompt for VS 2019】。接下来配置tasks.json实现不打开【Developer Command Prompt for VS 2019】也可以正常实现编译、运行、调试等操作。
六、 直接打开VSCode运行程序
打开tasks.json,按照如下编写,【VsDevCmd.bat】文件在安装【Build Tools for Visual Studio 2019】的路径下。
更改之后可以关闭【Developer Command Prompt for VS 2019】,编译运行程序都没有问题。
{
"version": "2.0.0",
"windows": {
"options": {
"shell": {
"executable": "cmd.exe",
"args": [
"/C",
// The path to VsDevCmd.bat depends on the version of Visual Studio you have installed.
"\"C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/Common7/Tools/VsDevCmd.bat\"",
"&&"
]
}
}
},
"tasks": [
{
"type": "shell",
"label": "cl.exe build active file",
"command": "cl.exe",
"args": [
"/Zi",
"/EHsc",
"/Fe:",
"${fileDirname}\\${fileBasenameNoExtension}.exe",
"${file}"
],
"problemMatcher": ["$msCompile"],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
官方链接中还提供了错误出现的原因及解决方法,我安装配置过程中没有出现过,所以就不赘述了,如果有问题的可以在官方说明中找到相关的内容。
七、 小结
1. VSCode使用MSVC编译工具时可以不安装完整的VS IDE,只安装构建工具即可;
2. tasks.json保存与编译环境相关的内容,Launch.json保存与调试相关的内容;
3.可以编辑tasks.json的内容实现不打开【Developer Command Prompt for VS 2019】编译运行程序。