本站点文档内容均翻译自code.visualstudio.com,仅供个人学习,如有差异请以官网为准。

C/C++ for Visual Studio Code

Visual Studio Code 的 C/C++ 支持由 Microsoft C/C++ 扩展 提供,以在 Windows、Linux 和 macOS 上实现跨平台的 C 和 C++ 开发。当您创建一个 *.cpp文件,该扩展添加了诸如语法高亮(着色)、智能完成和悬停(IntelliSense)以及错误检查等功能。

C++ 语言特性

安装扩展

  1. 打开 VS Code。
  2. 在活动栏上选择扩展视图图标或使用键盘快捷键 (⇧⌘X (Windows, Linux Ctrl+Shift+X))。
  3. 搜索'C++'输入:.
  4. 选择安装

C/C++ 扩展

设置你的 C++ 环境

C++ 是一种编译型语言,这意味着你的程序源代码必须在运行之前被翻译(编译)。C/C++ 扩展不包括 C++ 编译器或调试器,因为 VS Code 作为编辑器依赖于命令行工具进行开发工作流程。你需要安装这些工具或使用你计算机上已经安装的工具。

检查你是否安装了编译器

注意:您的学术或工作开发环境中可能已经提供了 C++ 编译器和调试器。请咨询您的教师或同事,以获取安装推荐的 C++ 工具集(编译器、调试器、项目系统、检查器)的指导。

一些平台已经预装了常见的编译器,GNU 编译器集合 (GCC) 在 Linux 上,Clang 工具与 Xcode 在 macOS 上。

检查你是否已经安装了它们:

  1. 使用 (⌃⇧` (Windows, Linux Ctrl+Shift+`)) 在 VS Code 中打开新的终端Windows

  2. 使用以下命令检查 GCC 编译器g++输入:

    g++ --版本
    

    或者这个命令用于Clang编译器clang输入:

    clang --版本
    

输出应向您显示编译器的版本和详细信息。如果未找到,请确保您的编译器可执行文件在您的平台路径中。%路径在 Windows 上,$PATH在 Linux 和 macOS 上,确保 C/C++ 扩展可以找到它。否则,请按照下面部分中的说明安装编译器。

安装编译器

如果你没有安装编译器,你可以按照我们的其中一个安装教程进行操作:

Windows

转到MSVC教程

前往 MinGW 教程

Linux

前往GCC教程

macOS

前往Clang教程

注意:如果您更喜欢一个完整的集成开发环境(IDE),具有内置的编译、调试和项目模板(文件 > 新建项目),有很多选择,例如 Visual Studio Community 版本。

示例:在 Windows 上安装 MinGW-x64

为了理解这个过程,让我们通过MSYS2安装 Mingw-w64。Mingw-w64 是 Windows 上一个受欢迎的免费工具集。它提供了最新的 GCC、Mingw-w64 及其他有用的 C++ 工具和库的本地构建。

  1. 使用 这个直接链接下载MinGW安装程序.

  2. 运行安装程序并按照安装向导的步骤进行操作。注意,MSYS2 需要 64 位 Windows 8.1 或更新版本。

  3. 在向导中,选择您希望的安装文件夹。记录此目录以备后用。在大多数情况下,推荐的目录是可接受的。同样,在设置开始菜单快捷方式步骤时也是如此。完成后,请确保现在运行 MSYS2复选框已选中,并选择完成。然后,一个 MSYS2 终端Windows将自动打开。

  4. 在这个终端中,通过运行以下命令安装 MinGW-w64 工具链:

    pacman -S --needed base-devel mingw-w64-ucrt-x86_64-toolchain
    
  5. 将显示可用的软件包列表

    MYSS2 安装程序

  6. 接受默认的软件包数量工具链 按下 回车键进行分组。

  7. 输入输入: Y当被提示是否继续进行安装时。

  8. 添加你的 MinGW-w64 路径文件夹到Windows路径通过以下步骤设置环境变量:

    1. 在Windows搜索栏中,输入“设置”以打开Windows设置。
    2. 搜索 编辑您的账户环境变量.
    3. 在你的用户变量中,选择路径 变量,然后选择 编辑
    4. 选择 并将您在安装过程中记录的 MinGW-w64 目标文件夹添加到列表中。如果您选择了默认安装步骤,路径是:C:\msys64\ucrt64\bin输入:.
    5. 选择 确定,然后在 确定 再次在 环境变量 Windows中更新 路径环境变量。 您需要重新打开任何控制台Windows以应用更新。路径环境变量需可用。
  9. 检查你的 MinGW-w64 工具是否正确安装并可用,打开一个新的命令提示符并输入:

    gcc --版本
    g++ --版本
    gdb --版本
    

    你应该会看到输出内容,显示你安装了哪些版本的GCC、g++和GDB。如果不是这样,请确保你的PATH条目与编译器工具所在的Mingw-w64二进制位置匹配,或者参考故障排除部分

创建一个 Hello World 应用程序

为了确保编译器已正确安装和配置,让我们创建一个 Hello World C++ 程序。

创建一个 C++ 文件

  1. 在 Windows 上,启动 Windows 命令提示符(在 Windows 搜索栏中输入 Windows 命令提示符)。在 macOS 和 Linux 上,您可以在终端中输入这些命令。

  2. 运行以下命令。它们正在创建一个名为的空文件夹项目你可以将所有VS Code项目都放在那里。接下来的命令会创建并导航到一个名为的子文件夹Hello World从那里,你正在打开Hello World直接在 VS Code 中使用代码命令。

    创建目录 项目
    进入目录 项目
    创建目录 你好世界
    进入目录 你好世界
    代码 .
    

    “code .”命令在当前工作文件夹中打开 VS Code,该文件夹将成为你的“工作区”。接受工作区信任对话框,选择是的,我相信作者,因为这是你创建的文件夹。

  3. 现在,创建一个名为的新文件helloworld.cpp 使用 文件资源管理器中的“新建文件”按钮或 文件 > 新建文件命令。

    文件资源管理器 新建文件按钮

添加 Hello World 源代码

粘贴以下源代码:

#include <iostream>

整数函数
{
    标准::输出 << "Hello World" << 标准::换行;
}

现在按⌘S(Windows, LinuxCtrl+S保存文件。你也可以启用自动保存,通过勾选自动保存在主文件菜单中。

运行 helloworld.cpp

  1. 确保你有helloworld.cpp打开它,使其成为您编辑器中的活动文件。

  2. 点击编辑器右上角的播放按钮。

    helloworld.cpp的截图和播放按钮

  3. 选择 C/C++: g++.exe 编译和调试当前文件 从系统中检测到的编译器列表中。

    C++ 调试配置下拉菜单

    只有第一次运行时才会提示您选择一个编译器helloworld.cpp. 这个编译器成为你的默认编译器设置任务.json文件。

  4. 构建成功后,您应该会在集成终端中看到“Hello World”出现。

    程序输出的截图

恭喜!您刚刚在 VS Code 中运行了您的第一个 C++ 程序!下一步是通过在下一部分中的教程之一来了解更多有关 Microsoft C/C++ 扩展的语言功能,例如 IntelliSense、代码导航、构建配置和调试。

教程

使用教程开始使用 C++ 和 VS Code,适用于您的环境:

文档

您可以在VS Code网站的C++部分找到更多关于使用Microsoft C/C++扩展的文档,那里有文章介绍:

C++ 目录 on code.visualstudio.com

远程开发

VS Code 和 C++ 扩展支持 远程开发,允许您通过 SSH 在远程机器或虚拟机、Docker 容器内或 Windows Subsystem for Linux (WSL) 中工作。

要安装远程开发支持:

  1. 安装 VS Code 远程开发扩展包.
  2. 如果远程源文件托管在WSL中,请使用WSL扩展。
  3. 如果您通过 SSH 连接到远程机器,请使用 远程 - SSH 扩展。
  4. 如果远程源文件托管在容器(例如,Docker)中,请使用Dev Containers扩展。

增强AI完成度

GitHub Copilot 是一个由AI驱动的代码补全工具,帮助你更快更智能地编写代码。你可以在VS Code中使用GitHub Copilot扩展来生成代码,或者从它生成的代码中学习。

GitHub Copilot 扩展在 VS Code 市场上

GitHub Copilot为多种语言和各种框架提供建议,尤其适用于Python、JavaScript、TypeScript、Ruby、Go、C#和C++。

您可以在 Copilot 文档 中了解更多关于如何开始使用 Copilot 的信息。

反馈

如果您遇到任何问题或对 Microsoft C/C++ 扩展有任何建议,请在 GitHub 上提交问题和建议。如果您还没有提供反馈,您可以进行这个 快速调查