Professional Documents
Culture Documents
com/docs/languages/cpp
Version 1.58 (/updates) is now available! Read about the new features and fixes from June.
TOPICS C++
✏ (https://github.com/microsoft/vscode-docs/blob/main/docs/languages/cpp.md)
After you install the extension, when you open or create a *.cpp file, you will have syntax highlighting
(colorization), smart completions and hovers (IntelliSense), and error checking.
Support (https://support.serviceshub.microsoft.com/supportforbusiness/create?sapId=d66407ed-3967-b000-4cfb-
2c318cad363d)
Privacy (https://privacy.microsoft.com/privacystatement) Terms of Use (https://www.microsoft.com/legal/terms-of-use)
License (/License)
(https://www.microsoft.com)
© 2021 Microsoft
Install a compiler #
C++ is a compiled language meaning your program's source code must be translated (compiled) before it
can be run on your computer. VS Code is first and foremost an editor, and relies on command-line tools to
do much of the development workflow. The C/C++ extension does not include a C++ compiler or
debugger. You will need to install these tools or use those already installed on your computer.
There may already be a C++ compiler and debugger provided by your academic or work development
environment. Check with your instructors or colleagues for guidance on installing the recommended C++
toolset (compiler, debugger, project system, linter).
Some platforms, such as Linux or macOS, have a C++ compiler already installed. Most Linux distributions
have the GNU Compiler Collection (https://wikipedia.org/wiki/GNU_Compiler_Collection) (GCC) installed and
macOS users can get the Clang (https://wikipedia.org/wiki/Clang) tools with Xcode
(https://developer.apple.com/xcode/).
g++ --version
clang --version
Note: If you would prefer a full Integrated Development Environment (IDE), with built-in compilation,
debugging, and project templates (File > New Project), there are many options available, such as the
Visual Studio Community (https://visualstudio.microsoft.com/vs/community) edition.
If you don't have a compiler installed, in the example below, we describe how to install the Minimalist GNU
for Windows (MinGW) C++ tools (compiler and debugger). MinGW is a popular, free toolset for Windows. If
you are running VS Code on another platform, you can read the C++ tutorials, which cover C++
configurations for Linux and macOS.
1. In the Windows search bar, type 'settings' to open your Windows Settings.
2. Search for Edit environment variables for your account.
3. Choose the Path variable and then select Edit.
4. Select New and add the Mingw-w64 destination folder path, with \mingw64\bin appended, to the
system path. The exact path depends on which version of Mingw-w64 you have installed and where
you installed it. If you used the settings above to install Mingw-w64, then add this to the path:
C:\msys64\mingw64\bin .
5. Select OK to save the updated PATH. You will need to reopen any console windows for the new PATH
location to be available.
g++ --version
gdb --version
If you don't see the expected output or g++ or gdb is not a recognized command, make sure your PATH
entry matches the Mingw-w64 binary location where the compiler tools are located.
Hello World #
To make sure the compiler is installed and configured correctly, we'll create the simplest Hello World C++
program.
Create a folder called "HelloWorld" and open VS Code in that folder ( code . opens VS Code in the current
folder):
mkdir HelloWorld
cd HelloWorld
code .
Now create a new file called helloworld.cpp with the New File button in the File Explorer or File > New
File command.
#include <iostream>
int main()
{
cout << "Hello World" << endl;
}
Now press Ctrl+S to save the file. You can also enable Auto Save (/docs/editor/codebasics#_saveauto-
save) to automatically save your file changes, by checking Auto Save in the main File menu.
This will display a dropdown with various compiler task options. If you are using a GCC toolset like MinGW,
you would choose C/C++: g++.exe build active file.
This will compile helloworld.cpp and create an executable file called helloworld.exe , which will
appear in the File Explorer.
From a command prompt or a new VS Code Integrated Terminal, you can now run your program by typing
".\helloworld".
If everything is set up correctly, you should see the output "Hello World".
This has been a very simple example to help you get started with C++ development in VS Code. The next
step is to try one of the tutorials listed below on your platform (Windows, Linux, or macOS) with your
preferred toolset (GCC, Clang, Microsoft C++) and learn more about the Microsoft C/C++ extension's
language features such as IntelliSense, code navigation, build configuration, and debugging.
Tutorials #
Get started with C++ and VS Code with tutorials for your environment:
Documentation #
You can find more documentation on using the Microsoft C/C++ extension under the C++ section
(/docs/cpp) of the VS Code website, where you'll find topics on:
Debugging (/docs/cpp/cpp-debug)
Editing (/docs/cpp/cpp-ide)
Settings (/docs/cpp/customize-default-settings-cpp)
FAQ (/docs/cpp/faq-cpp)
Remote Development #
VS Code and the C++ extension support Remote Development (/docs/remote/remote-overview) allowing
you to work over SSH on a remote machine or VM, inside a Docker container, or in the Windows Subsystem
for Linux (https://docs.microsoft.com/windows/wsl) (WSL).
Feedback #
If you run into any issues or have suggestions for the Microsoft C/C++ extension, please file issues and
suggestions on GitHub (https://github.com/microsoft/vscode-cpptools/issues). If you haven't already
provided feedback, please take this quick survey (https://www.research.net/r/VBVV6C6) to help shape this
extension for your needs.
Yes No
7/15/2021
IN THIS ARTICLE
Install a compiler
Hello World
Tutorials
{ Documentation
Remote Development
Feedback
Tweet(https://twitter.com/intent/tweet?original_referer=https://code.visualstudio.com/docs/languages
this /cpp&ref_src=twsrc%5Etfw&text=C++%20programming%20with%20Visual%20Studio%20Code&
link tw_p=tweetbutton&url=https://code.visualstudio.com/docs/languages/cpp&via=code)
Subscribe(/feed.xml)
Ask questions(https://stackoverflow.com/questions/tagged/vscode)
Follow @code(https://go.microsoft.com/fwlink/?LinkID=533687)
Request features(https://go.microsoft.com/fwlink/?LinkID=533482)
Report issues(https://www.github.com/Microsoft/vscode/issues)
Watch videos(https://www.youtube.com/channel/UCs5Y5_7XK8HLDX0SLNwkd3w)