VSCode+MSVC编写C/C++程序

目录

一、 安装软件

1.1 安装VSCode+中文插件

 1.2 安装C/C++插件

 1.3 安装MSVC工具集

1.3.1 下载

 1.3.2 安装

1.3.3 检查MSVC编译器

二、 编写代码

三、 编译运行

3.1 配置tasks.json

3.2 编译运行

 四、 调试

 五、 配置C/C++

六、 直接打开VSCode运行程序

七、 小结


按照微软官方链接操作,官方链接: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】编译运行程序。

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值