Содержание

c++ — Как настроить Visual Studio Code на работу с С++?

Уважаемый usernameusername,

примерно год назад я точно так же не мог с первого раза настроить VS Code.

Как справедливо указали в комментариях — есть прекрасная официальная документация по настройке. Тем не менее, я оставлю свой ответ, так как он более детальный в некоторых моментах. А в других моментах — менее детальный 🙂

Чтобы настроить VSC, хорошо бы научиться компилировать и запускать Вашу программу из командной строки. А потом настройки, котрые для этого понадобились, добавить в правильные места в файлах конфигурации VS code.

Труднность этого процесса именно в «зоопарке» разных возможностей. На этого не стоит пугаться.

Кроме того, настройка немного отличатся для разных систем (Linux, windows, macos), а Вы не указали, какая система у вас.

Я приведу пример настройки для компилятора gcc под Win64. Можно повторить мои шаги, а когда получится — сделать самостотельную настройку, например, на другой компилятор.

  1. Устанавливаем msys2. Я установил его в C:\Programs\msys64. При этом сам msys2 позаботился о том, чтобы путь к его директории C:\Programs\msys64\mingw64\bin оказался в path. Проверить это можно, выполнив в консоли команду path

  2. Устанавливаем компилятор и дебаггер. Я делаю это с помощью пакета msys2, выполнив в окне, котрое открывает msys2, следующие команды:

     pacman -Syuu
    

    Эта команда обновляет msys2. Она может закрыть консоль — это нормально, нужно перезапустить ее и ввести ту же команду, чтобы завершить обновление. Хорошей идеей будет время от времени обновляться, чтобы всегда иметь последнюю версию компилятора.

    Затем:

    pacman -S mingw-w64-x86_64-gcc pacman -S mingw-w64-x86_64-gdb

Теперь в Вашей системе есть компилятор и дебаггер. Проверить это просто: открываем новое окно консоли, пишем g++ --version

Если ответом не является версия — надо поискать, что пошло не так. Проверить path, возможно, отредактировать его вручную.

Такую же проверку хорошо бы сделат для дебаггера: gdb --version

  1. Пишем hello world. Это позволит нам окончательно убедиться, что компилятор работает. в любой директории созадем файл hello.cpp с текстом

     #include <iostream>
     int main() {
         std::cout << "Hello world!" << std::endl;
         return 0;
     };
    

потом в этой папке в командной строке компилируем командой g++ hello.cpp -o hello.exe Если появился файл hello.exe, и он запускается и вывоит строчку — ок, этот шаг завершен.

  1. А вот теперь можно поставить VSC. Обратите внимание, что редакций есть несколько, во первых для 32 и 64 битных систем, а во вторых — то, что назывется «User Installer» и «System Installer». Выбираем 64 битный System Installer на странице загрузки

  2. В VSC ставим расширение для работы с C++, оно называется C/C++ for Visual Studio Code

    и написано Microsoft

  3. Теперь запустим VSC в папке Вашего проекта. Пусть это будет папка C:\Projects\. Делается это так: запускам консоль. Переходим в консоли в папку (cd C:\Projects\). Запускаем VSC командой code ..

Важно то, что при этом создаётся папка настроек VSC, котрые находятся по пути C:\Projects\.vscode. В этой папке нужно создать 4 файла, я приведу их в минимальном варианте. Пути — для моей системы, где msys2 установлен в C:\Programs\msys64\.

Файл tasks.json — отвечает за то, чтобы работала комбинация клавиш Ctrl+shift+B для сборки программы:

    {
        "version": "2.0.0",
        "tasks": [
            {
                "type": "shell",
                "label": "g++.exe build active file",
                "command": "C:/Programs/msys64/mingw64/bin/g++.exe",
                "args": [
                    "-std=c++17",
                    "-g",
                    "${file}",
                    "-o",
                    "${fileDirname}\\${fileBasenameNoExtension}. exe"
                ],
                "options": {
                    "cwd": "C:\\Programs\\msys64\\mingw64\\bin"
                },
                "problemMatcher": [
                    "$gcc"
                ],
                "group": {
                    "kind": "build",
                    "isDefault": true
                }
            }
        ]
    }

Файл launch.json — отвечает за работу дебаггера:

    {
        "version": "0.2.0",
        "configurations": [
            {
                "name": "g++.exe build and debug active file",
                "type": "cppdbg",
                "request": "launch",
                "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
                "args": [],
                "stopAtEntry": false,
                "cwd": "${workspaceFolder}",
                "environment": [],
                "externalConsole": false,
                "MIMode": "gdb",
                "miDebuggerPath": "C:\\Programs\\msys64\\mingw64\\bin\\gdb.
exe", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true } ], "preLaunchTask": "g++.exe build active file", "internalConsoleOptions": "neverOpen" } ] }

Файл settings.json — как то отвечает за файловые ассоциации, возможно даже, что он не особо нужен. Но лишним не будет:

    {
        "files.associations": {
            "ostream": "cpp",
            "iostream": "cpp",
            "iomanip": "cpp",
            "chrono": "cpp",
            "iosfwd": "cpp",
            "thread": "cpp",
            "array": "cpp",
            "string_view": "cpp",
            "initializer_list": "cpp",
            "utility": "cpp",
            "valarray": "cpp",
            "optional": "cpp",
            "sstream": "cpp"
        }
    }

Файл c_cpp_properties.

json — отвечает за расположение include — файлов:

    {
        "configurations": [
            {
                "name": "Win32",
                "includePath": [
                    "${workspaceFolder}/**", 
                    "C:/Programs/msys64/mingw64/include/**"
                ],
                "defines": [
                    "_DEBUG",
                    "UNICODE",
                    "_UNICODE"
                ],
                "windowsSdkVersion": "8.1",
                "compilerPath": "C:\\Programs\\msys64\\mingw64\\bin\\g++.exe",
                "cStandard": "c11",
                "cppStandard": "c++17",
                "intelliSenseMode": "gcc-x86"
            }
        ],
        "version": 4
    }

Если Вы создадите эти файлы, а потом заново запустите в этой директории VSC — то всё уже должно работать. То есть, программы на C++ будут компилироваться, запускаться в отладке (по F5) и показывать значения переменных в окне отладчика.

Теперь — самое важное. Как только заработает — Вам нужно эту папку .vscode копировать к корень каждой папки с проектом на C++. Это позволит VSC запускаться с Вашими настройками.

Даже если мой способ Вам не подходит напрямую — у Вас теперь есть все необходимые ключевые слова, чтобы использовать их для гуглежа.

Успехов!

PS. Время от времени попадаются полезные дополнительные возможности для настройки.

Вот такой фрагмент файла tasks.json позволяет очищать окно терминала перед каждым билдом — полезно, чтобы уже не видеть уже исправленных ошибок, оставшихся от предыдущей попытки сборки (Источник):

    "presentation": {
            "clear": true                        // <-- this line
      }

Компиляция программ C / C ++ в Visual Studio Code [1] -MinGW-W64

Каталог статей

  • Предисловие
  • Инструменты / программное обеспечение для подготовки
  • меры
    • 1. Установите VS Code
    • 2. Установите расширение C / C ++ для VS Code.
    • 3. Установите MinGW-W64.
    • 4. Добавьте MinGW-W64 в путь
    • 5. Создайте новый проект.
    • 6. Создайте и отредактируйте файл конфигурации в VS Code.
      • task.json
      • launch.json
      • c_cpp_properties.json
      • О папке .vscode
  • хвостик

Visual Studio Code (далее VS Code) — один из самых популярных редакторов кода на данный момент. Он имеет открытый исходный код, кроссплатформенный, поддерживает несколько языков, богатые расширения и удобный пользовательский интерфейс. В то же время он учитывает функции некоторых IDE, таких как IntelliSense, компиляция, Отладка и т. Д. Сделали его популярным среди программистов. Но поскольку это, по сути, просто текстовый редактор, когда он был впервые установлен, в нем не было ничего, кроме основных функций редактирования, что заставляло некоторых пользователей, только начинающих работать, путаться. Поэтому, основываясь на моем собственном опыте, я кратко расскажу об установке VS Code и MinGW-W64, а также о том, как использовать MinGW-W64 для компиляции программ C / C ++ во вновь установленном VS Code.

  • Windows 10
  • Visual Studio Code
  • MinGW-W64

1. Установите VS Code

Сначала мы начнем сОфициальный сайт VS CodeСкачайте последнюю версию, откройте установщик и согласитесь с соглашением.

Для других задач подбирайте их по мере необходимости. Рекомендуется проверить их все. Так будет намного удобнее для дальнейшей работы

Подтвердите правильность и начните установку.



Запустите VS Code, чтобы проверить, может ли он работать нормально

2. Установите расширение C / C ++ для VS Code.

Нажмите кнопку «Расширение» на правой боковой панели.

Выберите тот, который показан на рисунке ниже, нажмите «Установить», чтобы установить

Здесь нам нужно только это одно расширение. Фактически, VS Code имеет множество полезных расширений, что является одной из причин, почему VS Code так популярен. В будущем будет возможность опубликовать отдельную статью, в которой будут представлены эти часто используемые плагины и способы их использования.

3. Установите MinGW-W64.

Мы начинаем сОфициальный сайт MinGW-W64Скачайте установщик и выполните установку

После «Далее» измените параметры, как показано на рисунке ниже, а затем перейдите к следующему шагу.

На этом этапе обратите внимание, что каталог установки по умолчаниюC:\Program Files\mingw-w64\x86_64-8.1.0-win32-seh-rt_v6-rev0 , Но чтобы предотвратить некоторые возможные ошибки, мы должны установить его в путь без пробелов, напримерC:\mingw-w64\x86_64-8.1.0-win32-seh-rt_v6-rev0 (В этом руководстве это используется в качестве примера, как показано ниже)

После нажатия кнопки «Далее» начнется установка.
Воспользуйтесь предоставленной мной ссылкой, чтобы загрузить программу онлайн-установки. Если читатели столкнутся с проблемами, связанными с сетью, вы можете найти автономный установочный пакет соответствующей версии в Интернете.
После завершения установки нажмите «Далее», а затем «Готово».

4. Добавьте MinGW-W64 в путь

Теперь нам нужно поместить двоичный файл в каталог MinGW-W64. C:\mingw-w64\x86_64-8.1.0-win32-seh-rt_v6-rev0\mingw64\bin (Измените этот путь на свой собственный) Добавьте в системную переменную окружения Путь, метод работы следующий
Откройте панель управления и выберитеСистема и безопасность> Система , А затем щелкните порядок, как показано ниже, чтобы добавить переменные среды

Или обратитесь к другому моему руководству:Как добавить Python в системную переменную окружения Path в Win10, Метод аналогичен

5. Создайте новый проект.

Сначала создадим новый проект. Создайте новую папку в своем любимом каталоге, я создам здесь новуюhello_world папка. Войдите в папку, щелкните правой кнопкой мыши пустое пространство и выберите «Открыть с помощью кода». (Вы также можете открыть папку в программе VS Code)

После открытия нажмите кнопку ниже, чтобы создать новый файл с именемhello_world.cpp

Примечание. Необходимо вручную ввести расширение файла..cpp, Чтобы правильно определить тип файла и включить IntelliSense

Затем вводим следующие

#include <iostream>
int main()
{
    std::cout << "Hello World!" << std::endl;
    return 0;
}

Ctrl + S сохранить

6.

Создайте и отредактируйте файл конфигурации в VS Code.

Затем нам нужно сгенерировать файлы конфигурации, необходимые для компиляции (Compile) и отладки (Debug). Сначала мы генерируем файл конфигурации, используемый для компиляцииtasks.json

task.json

НажмитеCtrl+Shift+PСочетание клавиш, во всплывающем окне найдите Задачи, выберите Настроить задачу сборки по умолчанию.

и выберитеg++Это третий на картинке ниже

Теперь у нас есть файл конфигурации по умолчанию.tasks.jsonследующим образом

Примечание: мы можем получить больше информации об этом файле по ссылке в комментарии

Теперь вернемся кhello_world.cpp, Вы можете использовать его напрямуюCtrl+Shift+BЯрлык для компиляции файла

Вы можете видеть, что скомпилированныйhello_world.exeфайл. Нажмите Ctrl +Сочетание клавиш, чтобы открыть Терминал с VS Code, введите. \ hello_world.exe`, вы можете запустить напрямую

launch.json

Когда мы включаем GDB для отладки, нам понадобится еще одинlaunch.json
выберите в верхней строке менюDebug > Add Configuration…

и выберитеC++ (GDB/LLDB)

, затем выберитеg++Вон тот

VS Code автоматически запустит отладку и сгенерируетlaunch.jsonФайл, как показано ниже

Теперь отладка по умолчанию запускается в терминале ниже. Если нам нужно отдельное окно командной строки, мы можем добавить"externalConsole": falseсреднийfalseЧтобыtrue, А затем отлаживайте эффект следующим образом

Примечание. Подробнее об этом файле можно узнать по ссылке в комментарии к файлу launch.json.

c_cpp_properties.json

Если мы хотим дополнительно настроить соответствующую конфигурацию расширения C / C ++, мы можем создатьc_cpp_properties. json, Есть два способа использования UI и json
Ctrl+Shift+P, Найдите c / c ++, выберите любое из следующих изображений (пользовательский интерфейс — графическая операция, JSON — метод редактирования текста)

Ниже приводится обзор параметров (без усечения).



Здесь нет необходимости в дополнительных операциях, просто установите его на мое изображение выше.

О папке .vscode

Мы видим еще один в папке.vscodeВ папке находится только что сгенерированный файл конфигурации. Поскольку то, что мы создали раньше, является общими файлами шаблонов, каждый раз, когда мы создаем новый проект в будущем, нам нужно только.vscodeСкопируйте в соответствующую папку, отредактируйте и настройте по мере необходимости, вы можете напрямую использовать сочетания клавиш для компиляции и отладки, без необходимости повторять процесс снова

На данный момент руководство по использованию MinGW-W64 для компиляции программ C / C ++ в Visual Studio Code закончено.

Это руководство написано на основе моего собственного опыта. Если есть упущения и ошибки, вы можете исправить меня.

С/С++ на Linux в Visual Studio Code для начинающих / Хабр

Давайте начистоту, мало кто использует отладчик GDB на Linux в консольном варианте. Но что, если добавить в него красивый интерфейс? Под катом вы найдёте пошаговую инструкцию отладки кода С/С++ на Linux в Visual Studio Code.



Передаю слово автору.

Относительно недавно я переехал на Linux. Разрабатывать на Windows, конечно, удобнее и приятнее, но и здесь я нашел эффективный способ легко и быстро отлаживать код на С/С++, не прибегая к таким методам как «printf-стайл отладки» и так далее.

Итак приступим. Писать в sublime (или gedit/kate/emacs), а запускать в терминале — так себе решение, ошибку при работе с динамическим распределением памяти вряд ли найдёшь с первого раза. А если проект трудоёмкий? У меня есть более удобное решение. Да и ещё поддержка Git в редакторе, одни плюсы.

Сегодня мы поговорим про Visual Studio Code.

Установка

Ubuntu/Debian

  1. Качаем версию пакета VS Code с расширением .deb
  2. Переходим в папку, куда скачался пакет (cd ~/Загрузки или cd ~/Downloads)
  3. Пишем, где (имя пакета).deb — название файла, который вы только что скачали:
    sudo dpkg -i (имя пакета).deb
    	sudo apt-get install -f

OpenSUSE/SLE Based distrs

  1. Установим репозиторий:
    sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
    sudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ntype=rpm-md\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/zypp/repos.d/VScode.repo'

  2. Обновим пакеты и установим VS Code:
    sudo zypper refresh
    sudo zypper install code

Расширения для С/С++

Чтобы VS Code полностью сопровождал нас при работе с файлами С/С++, нужно установить расширение «cpptools». Также полезным будет поставить один из наборов сниппетов.

Настоятельно рекомендую включить автосохранение редактируемых файлов, это поможет нам в дальнейшем.

Идём дальше. Открываем любую папку (новую или нет, неважно).

У меня в этой папке уже есть пара файлов для работы с C/C++. Вы можете скопировать одну из своих наработок сюда или создать новый файл.

Осталось всего ничего. Настроить компиляцию в одну клавишу и научиться отлаживать без printf.

Шаг 1. Открываем файл .c/.cpp, который (обязательно) лежит в вашей папке.

Шаг 2. Нажимаем Ctrl+Shift+B. VS Code вам мягко намекнет, что он не знает как собирать ваш проект.


Шаг 3. Поэтому дальше настраиваем задачу сборки: выбираем «Настроить задачу сборки» -> «Others».

Шаг 4. Прописываем конфигурацию в соответствии с образцом. По сути мы пишем скрипт для консоли, так что всем кто имел дело с ней будет понятно дальнейшее. Прошу заметить, что для сборки исходников в системе должен стоять сам компилятор (gcc или другой, отличаться будет только значение поля command). Поэтому для компиляции .cpp, понадобится в поле command указать g++ или c++, а для .c gcc.

Шаг 5. В args прописываем аргументы, которые будут переданы на вход вашему компилятору. Напоминаю, что порядок должен быть примерно таким: -g, <имя файла>.

Внимание: Если в вашей программе используется несколько файлов с исходным кодом, то укажите их в разных аргументах через запятую. Также обязательным является ключ -g(а лучше даже -g3). Иначе вы не сможете отладить программу.

Если в проекте для сборки вы используете makefile, то в поле command введите make, а в качестве аргумента передайте директиву для сборки.


Шаг 6. Далее возвращаемся обратно к нашему исходнику. И нажимаем F5 и выбираем C++.

Шаг 7. Осталось только написать путь к файлу программы. По умолчанию это ${workspaceRoot}/a. out, но я в своем файле сборки указал флаг -o и переименовал файл скомпилированной программы, поэтому у меня путь до программы: ${workspaceRoot}/main.


Шаг 8. Всё, больше нам не нужно ничего для начала использования всех благ VS Code. Переходим к основному проекту.

Отладка

Для начала скомпилируем программу (нет, нет, убери терминал, теперь это делается по нажатию Ctrl+Shift+B).

Как вы видите в проводнике появился main, значит все в порядке и сборка прошла без ошибок. У меня не слишком большая программа, но выполняется она моментально. Одним словом, провал чистой воды, потому что отладка идет в отдельном терминале, который закрывается после того, как программа дошла в main() до "return 0;".


Пришло время для брейкпоинтов. Выберем строчку с "return 0;" и нажимаем F9.


Строчка, помеченная красной точкой слева — место, где остановится программа, при выполнении.

Далее нажимаем F5.

Как я и сказал, программа остановила выполнение. Обратите внимание на окно с локальными переменными.

Удобненько. Также при остановке можно наводить мышкой на переменные и структуры в коде и смотреть их значения.


Также, если на каком-то этапе выполнения вам нужно посмотреть пошаговое выполнение той или иной операции, например в цикле, то поставьте брейкпоинт перед ней и нажмите F10 для выполнения текущей строчки без захода в подпрограмму и F11 с заходом.

Также есть случаи, когда считать выражение очень муторно вручную, но для отладки вам нужно знать, например, значение суммы трех элементов массива, или значение большого логического выражения. Для этого существуют контрольные значения. Все это и многое другое могут показать вам Контрольные значения (или «watch»).

Важно:

  1. Для каждой папки вам нужно отдельно настроить файлы сборки и путь к программе.
  2. VS Code не решит ваших проблем, но поможет быстрее с ними разобраться. Причем в разы.
  3. После каждого изменения программы, ее нужно компилировать заново, нажимая Ctrl+Shift+B.

Полезные шорткаты можно посмотреть здесь.

Об авторе


Максимилиан Спиридонов — разработчик C#, студент МАИ, Microsoft Student Partner. В профессиональную разработку на .NET пришёл ещё в школе. Около года работал с реальными проектами на WPF(MVVM)+C#, MySQL, более 4-х лет разрабатывал на C#. Основная сфера интересов сейчас — это мобильная разработка на Xamarin. Также, по воле случая в сфере интересов оказались С/С++ и Linux.

Программирование на C++ с помощью Visual Studio Code

Поддержка C/C++ для Visual Studio Code обеспечивается расширением Microsoft C/C++, позволяющим осуществлять кроссплатформенную разработку на C и C++ в Windows, Linux и macOS.

Установить расширение

  1. Открыть VS Code.
  2. Выберите значок представления «Расширения» на панели действий или используйте сочетание клавиш (⇧⌘X (Windows, Linux Ctrl+Shift+X)).
  3. Найдите 'C++' .
  4. Выберите Установить .

После установки расширения при открытии или создании файла *.cpp у вас будет подсветка синтаксиса (раскрашивание), интеллектуальное завершение и наведение (IntelliSense) и проверка ошибок.

Установка компилятора

C++ является компилируемым языком, что означает, что исходный код вашей программы должен быть переведен (скомпилирован) перед запуском на вашем компьютере. VS Code — это, прежде всего, редактор, и он полагается на инструменты командной строки, которые выполняют большую часть рабочего процесса разработки. Расширение C/C++ не включает компилятор или отладчик C++. Вам нужно будет установить эти инструменты или использовать те, которые уже установлены на вашем компьютере.

Возможно, в вашей академической или рабочей среде разработки уже есть компилятор и отладчик C++. Обратитесь к своим инструкторам или коллегам за инструкциями по установке рекомендуемого набора инструментов C++ (компилятор, отладчик, система проектов, линтер).

На некоторых платформах, таких как Linux или macOS, уже установлен компилятор C++. В большинстве дистрибутивов Linux установлена ​​коллекция компиляторов GNU (GCC), и пользователи macOS могут получить инструменты Clang с помощью Xcode.

Проверьте, установлен ли у вас компилятор

Убедитесь, что исполняемый файл вашего компилятора находится в пути вашей платформы ( %PATH в Windows, $PATH в Linux и macOS), чтобы расширение C/C++ могло его найти. Вы можете проверить доступность своих инструментов C++, открыв интегрированный терминал (⌃` (Windows, Linux Ctrl+`)) в VS Code и попытавшись запустить компилятор напрямую.

Проверка компилятора GCC g++ :

 g++ --version
 

Проверка компилятора Clang clang :

 лязг --версия
 

Примечание . Если вы предпочитаете полную интегрированную среду разработки (IDE) со встроенной компиляцией, отладкой и шаблонами проектов (Файл > Новый проект), доступно множество вариантов, например, версия Visual Studio Community.

Если у вас не установлен компилятор, в приведенном ниже примере мы описываем, как установить минималистские инструменты GNU для Windows (MinGW) C++ (компилятор и отладчик). MinGW — популярный бесплатный набор инструментов для Windows. Если вы используете VS Code на другой платформе, вы можете прочитать учебные пособия по C++, в которых рассматриваются конфигурации C++ для Linux и macOS.

Пример: установка MinGW-x64

Мы установим Mingw-w64 через MSYS2, который предоставляет актуальные собственные сборки GCC, Mingw-w64 и других полезных инструментов и библиотек C++. Вы можете загрузить последнюю версию установщика со страницы MSYS2 или использовать эту ссылку для установки.

Следуйте инструкциям по установке на веб-сайте MSYS2, чтобы установить Mingw-w64. Позаботьтесь о том, чтобы запустить каждое необходимое меню «Пуск» и команду pacman .

Вам потребуется установить полную цепочку инструментов Mingw-w64 ( pacman -S --needed base-devel mingw-w64-x86_64-toolchain ), чтобы получить отладчик gdb .

Добавьте компилятор MinGW в свой путь

Добавьте путь к папке Mingw-w64 bin в переменную среды Windows PATH , выполнив следующие действия:

  1. В строке поиска Windows введите «Настройки» чтобы открыть настройки Windows.
  2. Найдите Изменить переменные среды для вашей учетной записи .
  3. Выберите переменную Path в ваших пользовательских переменных , а затем выберите Edit .
  4. Выберите New и добавьте путь к папке назначения Mingw-w64 с добавлением \mingw64\bin к системному пути. Точный путь зависит от того, какую версию Mingw-w64 вы установили и где вы ее установили. Если вы использовали указанные выше настройки для установки Mingw-w64, добавьте это к пути: C:\msys64\mingw64\bin .
  5. Выберите OK , чтобы сохранить обновленный путь. Вам нужно будет снова открыть все окна консоли, чтобы новое местоположение PATH стало доступным.

Проверьте установку MinGW

Чтобы убедиться, что ваши инструменты Mingw-w64 правильно установлены и доступны, откройте новую командную строку и введите:

 gcc --version
г++ --версия
gdb --версия
 

Если вы не видите ожидаемого вывода или g++ или gdb не является распознанной командой, убедитесь, что ваша запись PATH соответствует двоичному расположению Mingw-w64, где находятся инструменты компилятора.

Если компиляторы не существуют в этой записи PATH, убедитесь, что вы выполнили инструкции на веб-сайте MSYS2 для установки Mingw-w64.

Hello World

Чтобы убедиться, что компилятор установлен и настроен правильно, мы создадим простейшую программу Hello World на C++.

Создайте папку с именем «HelloWorld» и откройте VS Code в этой папке (код . открывает VS Code в текущей папке):

 mkdir HelloWorld
компакт-диск HelloWorld
код .
 

«Код .» Команда открывает VS Code в текущей рабочей папке, которая становится вашей «рабочей областью». Примите диалог Workspace Trust, выбрав Да, я доверяю авторам , так как это созданная вами папка.

Теперь создайте новый файл с именем helloworld.cpp с помощью кнопки New File в Проводнике или команды File > New File .

Добавить исходный код Hello World

Теперь вставьте в этот исходный код:

 #include 
основной ()
{
    std::cout << "Привет, мир" << std::endl;
}
 

Теперь нажмите ⌘S (Windows, Linux Ctrl+S), чтобы сохранить файл. Вы также можете включить автосохранение для автоматического сохранения изменений в файле, отметив Автосохранение в главном меню Файл .

Сборка Hello World

Теперь, когда у нас есть простая программа на C++, давайте ее построим. Выберите команду Terminal > Run Build Task (⇧⌘B (Windows, Linux Ctrl+Shift+B)) в главном меню.

Отобразится раскрывающийся список с различными вариантами задач компилятора. Если вы используете набор инструментов GCC, такой как MinGW, вы должны выбрать C/C++: g++.exe build active file .

Это скомпилирует helloworld.cpp и создаст исполняемый файл с именем helloworld.exe , который появится в проводнике.

Запустить Hello World

Теперь из командной строки или нового встроенного терминала VS Code вы можете запустить свою программу, введя «. \helloworld».

Если все настроено правильно, вы должны увидеть вывод «Hello World».

Это очень простой пример, который поможет вам начать разработку на C++ в VS Code. Следующим шагом является использование одного из перечисленных ниже руководств на вашей платформе (Windows, Linux или macOS) с предпочитаемым набором инструментов (GCC, Clang, Microsoft C++) и получение дополнительных сведений о языковых функциях расширения Microsoft C/C++, таких как IntelliSense. , навигация по коду, конфигурация сборки и отладка.

Учебники

Начните работу с C++ и VS Code с помощью руководств для вашей среды:

  • GCC в Windows через MinGW
  • Microsoft C++ в Windows
  • GCC на Linux
  • GCC в подсистеме Windows Для Linux
  • Clang/LLVM на macOS
  • Инструменты CMake в Linux

Документация

Дополнительную документацию по использованию расширения Microsoft C/C++ можно найти в разделе C++ на веб-сайте VS Code, где вы найдете следующие темы:

  • Отладка
  • Редактирование
  • Настройки
  • Часто задаваемые вопросы

Удаленная разработка

VS Code и расширение C++ поддерживают удаленную разработку, позволяя вам работать через SSH на удаленной машине или виртуальной машине, внутри контейнера Docker или в подсистеме Windows для Linux (WSL).

Чтобы установить поддержку удаленной разработки:

  1. Установите пакет расширений удаленной разработки VS Code.
  2. Если удаленные исходные файлы размещены в WSL, используйте Расширение WSL .
  3. Если вы подключаетесь к удаленному компьютеру с помощью SSH, используйте расширение Remote — SSH .
  4. Если удаленные исходные файлы размещены в контейнере (например, Docker), используйте расширение Dev Containers .

Обратная связь

Если у вас возникнут какие-либо проблемы или у вас есть предложения по расширению Microsoft C/C++, отправьте сообщения о проблемах и предложениях на GitHub. Если вы еще не предоставили отзыв, пройдите этот небольшой опрос, чтобы помочь настроить это расширение в соответствии с вашими потребностями.

21/01/2022

R в Visual Studio Code

Язык программирования R — это динамический язык, созданный для статистических вычислений и графики. R обычно используется в статистическом анализе, научных вычислениях, машинном обучении и визуализации данных.

Расширение R для Visual Studio Code поддерживает расширенную подсветку синтаксиса, завершение кода, линтинг, форматирование, взаимодействие с терминалами R, просмотр данных, графики, переменные рабочей области, страницы справки, управление пакетами и работу с документами R Markdown.

Начало работы

  1. Установите R (>= 3.4.0) для вашей платформы. Пользователям Windows рекомендуется проверить Сохранить номер версии в реестре во время установки, чтобы расширение R могло автоматически найти исполняемый файл R.

  2. Установить языковой сервер в R.

     install.packages("languageserver")
     
  3. Установите расширение R для Visual Studio Code.

  4. Создайте файл R и начните программировать.

Для повышения удобства использования R в VS Code рекомендуется следующее программное обеспечение и пакеты:

  • радиан: современная консоль R, которая устраняет многие ограничения официального терминала R и поддерживает множество функций, таких как подсветка синтаксиса и автозаполнение.

  • httpgd: пакет R для предоставления графического устройства, которое асинхронно обслуживает графику SVG через HTTP и WebSockets. Этот пакет требуется интерактивному просмотрщику графиков расширения R для VS Code.

Если у вас возникнут проблемы с установкой пакетов R или расширения R для VS Code, перейдите на вики-страницы по установке (Windows | macOS | Linux) для получения дополнительных сведений.

Выполнение кода R

Выполнение кода R — это просто отправка кода на терминал R. Перед запуском кода R вы можете создать терминал R с помощью команды R: Создать терминал R в палитре команд.

Когда терминал R готов, вы можете либо выбрать код, либо поместить курсор в начало или конец кода, который хотите запустить, нажмите (Ctrl+Enter) , после чего код будет отправлен на активный терминал R.

Если вы хотите запустить весь файл R, откройте файл в редакторе и нажмите Ctrl+Shift+S , и файл будет загружен в активный терминал R.

Для более продвинутого использования, такого как запуск нескольких терминалов R или самоуправляемых терминалов R, вы можете прочитать Взаимодействие с терминалами R.

Автодополнение кода (IntelliSense)

Расширение R поддерживает автодополнение кода и многие другие функции редактирования кода благодаря языковому серверу R. Завершение показывает доступные функции и переменные в области действия и текущей рабочей области R вместе с документацией из пакетов или в виде комментариев.

Линтинг

Линтинг — это функция, которая проверяет код на наличие предупреждений и потенциальных ошибок. Анализ кода R предоставляется пакетом lintr. Вы можете настроить его, выбрав из списка доступных линтеров через файл конфигурации.

Помимо завершения кода и анализа, расширение R также поддерживает другие функции, такие как форматирование кода, переход к определению, переименование символа, поиск ссылок. Дополнительные сведения см. в разделе R Language Service.

Средство просмотра рабочей области

Средство просмотра рабочей области расположено на боковой панели в VS Code и содержит используемые пакеты и глобальные переменные в активном сеансе R. Выберите значок R на панели действий, и отобразится средство просмотра рабочей области и средство просмотра страниц справки. Это удобный способ просмотра рабочей области R, предварительного просмотра существующих объектов R, поиска разделов справки и чтения справочных страниц в интерактивном режиме.

Помимо средства просмотра рабочей области, есть также средства просмотра данных, средства просмотра графиков и средства просмотра виджетов. Дополнительные сведения см. в разделе Интерактивные средства просмотра.

Отладка

Возможности отладки R предоставляются расширением R Debugger. Он поддерживает отладку кода R или проекта R путем запуска нового процесса R или присоединения к работающему процессу.

При достижении точки останова вы можете просмотреть или изменить переменные текущего выбранного фрейма стека или оценить выражение в консоли отладки в фрейме стека.

Подробнее читайте в README проекта.

Следующие шаги

Этот обзор представляет собой краткое введение в расширение R для VS Code. Прочтите README расширения для получения подробного списка функций.

Если у вас есть какие-либо проблемы, предложения или пожелания, пожалуйста, не стесняйтесь открывать проблему в репозитории GitHub.

Если вы хотите узнать больше о VS Code, попробуйте эти темы:

  • Основное редактирование — краткое введение в основы редактора VS Code.
  • Установите расширение — узнайте о других расширениях, доступных в Marketplace.
  • Навигация по коду — быстро перемещайтесь по исходному коду.

23.03.2022

Настройка Visual Studio Code для Microsoft C++

В этом руководстве вы настраиваете Visual Studio Code для использования компилятора и отладчика Microsoft Visual C++ в Windows.

После настройки VS Code вы скомпилируете и отладите простую программу Hello World в VS Code. В этом учебнике не рассказывается подробно о наборе инструментов Microsoft C++ или языке C++. По этим темам в Интернете доступно множество хороших ресурсов.

Если у вас есть какие-либо проблемы, не стесняйтесь сообщить о проблеме для этого руководства в репозитории документации VS Code.

Предварительные условия

Чтобы успешно пройти этот урок, вы должны сделать следующее:

  1. Установите код Visual Studio.

  2. Установите расширение C/C++ для VS Code. Вы можете установить расширение C/C++, выполнив поиск «c++» в представлении «Расширения» (⇧⌘X (Windows, Linux Ctrl+Shift+X)).

  3. Установите набор инструментов компилятора Microsoft Visual C++ (MSVC).

    Если у вас установлена ​​последняя версия Visual Studio, откройте установщик Visual Studio из меню «Пуск» Windows и убедитесь, что рабочая нагрузка C++ проверена. Если он не установлен, то поставьте галочку и выберите пункт Кнопка «Изменить » в программе установки.

    Вы также можете установить Desktop Development с рабочей нагрузкой C++ без полной установки Visual Studio IDE. На странице загрузок Visual Studio прокрутите вниз, пока не увидите Tools for Visual Studio 2022 в разделе All Downloads и выберите загрузку Build Tools for Visual Studio 2022 .

    Запустится установщик Visual Studio, в котором откроется диалоговое окно с доступными рабочими нагрузками Visual Studio Build Tools. Проверьте Desktop development с рабочей нагрузкой C++ и выберите Install .

Примечание . Вы можете использовать набор инструментов C++ из Visual Studio Build Tools вместе с Visual Studio Code для компиляции, сборки и проверки любой кодовой базы C++, если у вас также есть действующая лицензия Visual Studio (Community, Pro или Enterprise). ), который вы активно используете для разработки кодовой базы C++.

Проверьте установку Microsoft Visual C++

Чтобы использовать MSVC из командной строки или VS Code, необходимо выполнить запуск из командной строки разработчика для Visual Studio . В обычной оболочке, такой как PowerShell, Bash или командная строка Windows, не установлены необходимые переменные среды пути.

Чтобы открыть командную строку разработчика для VS, начните вводить «разработчик» в меню «Пуск» Windows, и вы должны увидеть его в списке предложений. Точное имя зависит от того, какая версия Visual Studio или Visual Studio Build Tools у вас установлена. Выберите элемент, чтобы открыть подсказку.

Вы можете проверить правильность установки компилятора C++, cl.exe , набрав 'cl', и вы должны увидеть сообщение об авторских правах с версией и основным описанием использования.

Если командная строка разработчика использует расположение BuildTools в качестве начального каталога (вы не хотите помещать туда проекты), перейдите в папку пользователя ( C:\users\{ваше имя пользователя}\ ) до вы начинаете создавать новые проекты.

Примечание . Если по какой-либо причине вы не можете запустить VS Code из командной строки разработчика , вы можете найти обходной путь для создания проектов C++ с помощью VS Code в разделе Запуск VS Code вне командной строки разработчика.

Create Hello World

В командной строке разработчика создайте пустую папку с именем «projects», где вы можете хранить все свои проекты VS Code, затем создайте подпапку с именем «helloworld», перейдите в нее и откройте VS Code ( код ) в этой папке ( . ), введя следующие команды:

 проектов mkdir
компакт-диск проекты
привет мир
компакт-диск привет мир
код . 
 

"Код ." Команда открывает VS Code в текущей рабочей папке, которая становится вашей «рабочей областью». По мере прохождения руководства вы увидите три файла, созданных в папке .vscode в рабочей области:

  • tasks.json (инструкции по сборке)
  • launch.json (настройки отладчика)
  • c_cpp_properties.json (путь к компилятору и настройки IntelliSense)

Добавьте файл исходного кода

В строке заголовка Проводника выберите кнопку Новый файл и назовите файл helloworld.cpp .

Добавьте исходный код hello world

Теперь вставьте в этот исходный код:

 #include 
#include <вектор>
#include <строка>
использование пространства имен std;
основной ()
{
    vector msg {"Hello", "C++", "World", "from", "VS Code", "и расширение C++!"};
    for (константная строка и слово: сообщение)
    {
        cout << слово << " ";
    }
    cout << конец;
}
 

Теперь нажмите ⌘S (Windows, Linux Ctrl+S), чтобы сохранить файл. Обратите внимание, как только что добавленный файл отображается в представлении File Explorer (⇧⌘E (Windows, Linux Ctrl+Shift+E)) на боковой панели кода VS:

Вы также можете включить автоматическое сохранение для автоматического сохраните изменения в файле, установив флажок Auto Save в главном меню File .

Панель действий в крайнем левом углу позволяет открывать различные представления, такие как Search , Source Control и Выполнить . Представление Run будет рассмотрено позже в этом руководстве. Вы можете узнать больше о других представлениях в документации по пользовательскому интерфейсу VS Code.

Примечание . При сохранении или открытии файла C++ вы можете увидеть уведомление от расширения C/C++ о доступности версии для участников программы предварительной оценки, которая позволяет протестировать новые функции и исправления. Вы можете проигнорировать это уведомление, выбрав X ( Clear Notification ).

Исследуйте IntelliSense

В новом файле helloworld.cpp наведите курсор на vector или string , чтобы увидеть информацию о типе. После объявления переменной msg начните вводить msg. , как при вызове функции-члена. Вы должны немедленно увидеть список завершения, который показывает все функции-члены, и окно, которое показывает информацию о типе для объекта msg :

Вы можете нажать клавишу Tab, чтобы вставить выбранный элемент; затем, когда вы добавите открывающую скобку, вы увидите информацию обо всех аргументах, которые требуются функции.

Запустить helloworld.cpp

Помните, что расширение C++ использует компилятор C++, установленный на вашем компьютере, для построения вашей программы. Перед запуском и отладкой helloworld.cpp в VS Code убедитесь, что у вас установлен компилятор C++.

  1. Открыть helloworld.cpp , чтобы это был активный файл.

  2. Нажмите кнопку воспроизведения в правом верхнем углу редактора.

  3. Выберите C/C++: cl.exe для сборки и отладки активного файла из списка обнаруженных компиляторов в вашей системе.

Вам будет предложено выбрать компилятор только при первом запуске helloworld.cpp . Этот компилятор будет установлен как компилятор «по умолчанию» в tasks.json 9.файл 0015.

  1. После успешного завершения сборки выходные данные вашей программы появятся во встроенном терминале .

Если вы получаете сообщение об ошибке при сборке и отладке с помощью cl.exe, убедитесь, что вы запустили VS Code из командной строки разработчика для Visual Studio, используя код . Ярлык .

При первом запуске вашей программы расширение C++ создает tasks.json , которые вы найдете в своем проекте .vscode папка. tasks.json хранит конфигурации сборки.

Ваш новый файл tasks.json должен выглядеть примерно так, как показано ниже:

 {
  "версия": "2.0.0",
  "задачи": [
    {
      "тип": "оболочка",
      "label": "C/C++: активный файл сборки cl.exe",
      "команда": "cl.exe",
      "аргументы": [
        "/Зи",
        "/ЭХск",
        "/Фе:",
        "${fileDirname}\\${fileBasenameNoExtension}.exe",
        "${файл}"
      ],
      "проблемматчер": ["$msCompile"],
      "группа": {
        "вид": "строить",
        «по умолчанию»: правда
      },
      "detail": "Задача, созданная отладчиком."
    }
  ]
}
 

Примечание : вы можете узнать больше о переменных tasks.json в справочнике по переменным.

Параметр команды указывает программу для запуска; в данном случае это «cl. exe». Массив args указывает аргументы командной строки, которые будут переданы в cl.exe. Эти аргументы должны быть указаны в порядке, ожидаемом компилятором.

Эта задача сообщает компилятору C++ взять активный файл ( ${file} ), скомпилируйте его и создайте исполняемый файл (переключатель /Fe: ) в текущем каталоге ( ${fileDirname} ) с тем же именем, что и активный файл, но с расширением .exe ( $ {fileBasenameNoExtension}.exe ), что в нашем примере дает helloworld.exe .

Значение метки — это то, что вы увидите в списке задач; вы можете назвать это как угодно.

Значение детали — это то, что вы увидите в качестве описания задачи в списке задач. Настоятельно рекомендуется переименовать это значение, чтобы отличать его от аналогичных задач.

Значение ProblemMatcher выбирает анализатор выходных данных для поиска ошибок и предупреждений в выходных данных компилятора. Для cl.exe вы получите наилучшие результаты, если будете использовать средство сопоставления задач $msCompile .

С этого момента кнопка воспроизведения будет читать tasks.json , чтобы выяснить, как собрать и запустить вашу программу. Вы можете определить несколько задач сборки в tasks.json , и та задача, которая помечена как задача по умолчанию, будет использоваться кнопкой воспроизведения. Если вам нужно изменить компилятор по умолчанию, вы можете запустить Задачи: настроить задачу сборки по умолчанию . В качестве альтернативы вы можете изменить файл tasks.json и удалить значение по умолчанию, заменив этот сегмент:

 «группа»: {
        "вид": "строить",
        «по умолчанию»: правда
    },
 

с этим:

 "группа": "сборка",
 

Изменение tasks.json

Вы можете изменить файл tasks.json для создания нескольких файлов C++, используя такой аргумент, как "${workspaceFolder}/*. cpp" вместо ${file} . Это создаст все файлов .cpp в вашей текущей папке. Вы также можете изменить имя выходного файла, заменив "${fileDirname}\\${fileBasenameNoExtension}.exe" жестко заданным именем файла (например, "${workspaceFolder}\\myProgram.exe" ).

Отладка helloworld.cpp

  1. Вернитесь к helloworld.cpp , чтобы он был активным файлом.
  2. Установите точку останова, щелкнув поле редактора или нажав F9 в текущей строке.
  3. В раскрывающемся списке рядом с кнопкой воспроизведения выберите Debug C/C++ File .
  4. Выберите C/C++: cl.exe для сборки и отладки активного файла из списка обнаруженных компиляторов в вашей системе (вам будет предложено выбрать компилятор только при первом запуске/отладке helloworld.cpp ).

Кнопка воспроизведения имеет два режима: Запуск файла C/C++ и Отладка файла C/C++ . По умолчанию будет использоваться последний использованный режим. Если вы видите значок отладки на кнопке воспроизведения, вы можете просто нажать кнопку воспроизведения для отладки вместо выбора пункта раскрывающегося меню.

Если вы получаете сообщение об ошибке при сборке и отладке с помощью cl.exe, убедитесь, что вы запустили VS Code из командной строки разработчика для Visual Studio, используя код . Ярлык .

Изучите отладчик

Прежде чем приступить к выполнению кода, обратите внимание на некоторые изменения в пользовательском интерфейсе:

  • Интегрированный терминал появляется в нижней части редактора исходного кода. В выводе отладки вы увидите выходные данные, указывающие на то, что отладчик запущен и работает.

  • Редактор выделяет строку, где вы устанавливаете точку останова перед запуском отладчика:

  • Представление Run and Debug слева показывает отладочную информацию. Вы увидите пример позже в учебнике.

  • В верхней части редактора кода появляется панель управления отладкой. Вы можете перемещать его по экрану, хватая точки с левой стороны.

Пошаговое выполнение кода

Теперь вы готовы начать пошаговое выполнение кода.

  1. Щелкните или нажмите значок Step over на панели управления отладкой.

    Это переместит выполнение программы на первую строку цикла for и пропустит все вызовы внутренних функций в классах vector и string , которые вызываются при создании и инициализации переменной msg . Обратите внимание на изменение Переменные окно слева.

    В этом случае ожидаются ошибки, потому что, хотя имена переменных для цикла теперь видны отладчику, оператор еще не выполнен, поэтому в этот момент читать нечего. Однако содержимое msg видимо, потому что этот оператор завершен.

  2. Нажмите . Снова выполните , чтобы перейти к следующему оператору в этой программе (пропустив весь внутренний код, который выполняется для инициализации цикла). Теперь Окно Variables показывает информацию о переменных цикла.

  3. Нажмите . Перейдите через еще раз, чтобы выполнить оператор cout . (Обратите внимание, что в выпуске за март 2019 г. расширение C++ не выводит никаких выходных данных в консоль отладки до выхода из цикла.)

  4. Если хотите, вы можете продолжать нажимать Перешагнуть через , пока все слова в векторе не будут напечатаны на консоли. Но если вам интересно, попробуйте нажать Кнопка Step Into для просмотра исходного кода в стандартной библиотеке C++!

    Один из способов вернуться к собственному коду — продолжать нажимать Перешагнуть . Другой способ — установить точку останова в вашем коде, переключившись на вкладку helloworld. cpp в редакторе кода, поместив точку вставки где-нибудь на операторе cout внутри цикла и нажав F9. Красная точка появляется в поле слева, указывая на то, что в этой строке установлена ​​точка останова.

    Затем нажмите F5, чтобы начать выполнение с текущей строки в заголовке стандартной библиотеки. Выполнение прервется на cout . Если хотите, вы можете снова нажать F9, чтобы отключить точку останова.

Установить часы

Иногда вам может понадобиться отслеживать значение переменной во время выполнения вашей программы. Вы можете сделать это, установив в переменной часы .

  1. Поместите точку вставки внутрь цикла. В Наблюдайте за окном , выберите знак плюс и в текстовом поле введите слово , которое является именем переменной цикла. Теперь просмотрите окно Watch, когда вы проходите через цикл.

  2. Добавьте еще одно наблюдение, добавив этот оператор перед циклом: int i = 0; . Затем внутри цикла добавьте следующий оператор: ++i; . Теперь добавьте часы для и , как вы делали в предыдущем шаге.

  3. Чтобы быстро просмотреть значение любой переменной, пока выполнение приостановлено в точке останова, вы можете навести на нее указатель мыши.

Настройка отладки с помощью launch.json

При отладке с помощью кнопки воспроизведения или F5 расширение C++ создает динамическую конфигурацию отладки на лету.

В некоторых случаях требуется настроить конфигурацию отладки, например указать аргументы для передачи программе во время выполнения. Пользовательские конфигурации отладки можно определить в файле launch.json .

Чтобы создать launch.json , выберите Добавить конфигурацию отладки из раскрывающегося меню кнопки воспроизведения.

Затем вы увидите раскрывающийся список для различных предопределенных конфигураций отладки. Выберите C/C++: cl.exe построить и отладить активный файл .

VS Code создает файл launch.json , который выглядит примерно так:

 {
  "версия": "0.2.0",
  "конфигурации": [
    {
      "name": "C/C++: cl.exe активный файл сборки и отладки",
      "тип": "cppvsdbg",
      "запрос": "запустить",
      "program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
      "аргументы": [],
      "stopAtEntry": ложь,
      "cwd": "${workspaceFolder}",
      "Окружающая среда": [],
      "внешняя консоль": ложь,
      "preLaunchTask": "C/C++: активный файл сборки cl.exe"
    }
  ]
}
 

В приведенном выше JSON программа указывает программу, которую вы хотите отлаживать. Здесь указывается активная папка с файлами ( ${fileDirname} ) и активное имя файла с расширением .exe ( ${fileBasenameNoExtension}.exe ), которое, если helloworld.cpp является активным файлом, будет быть helloworld. exe . Свойство args представляет собой массив аргументов, которые необходимо передать программе во время выполнения.

По умолчанию расширение C++ не будет добавлять точки останова в ваш исходный код и Значение stopAtEntry установлено на false .

Измените значение stopAtEntry на true , чтобы при запуске отладки отладчик останавливался на основном методе .

С этого момента кнопка воспроизведения и F5 будут считывать файл launch.json при запуске вашей программы для отладки.

Конфигурации C/C++

Если вам нужен больший контроль над расширением C/C++, вы можете создать c_cpp_properties.json , который позволит вам изменить такие параметры, как путь к компилятору, включить пути, стандарт C++ (по умолчанию C++17) и многое другое.

Пользовательский интерфейс конфигурации C/C++ можно просмотреть, выполнив команду C/C++: Изменить конфигурации (UI) из палитры команд (⇧⌘P (Windows, Linux Ctrl+Shift+P)).

Откроется страница Конфигурации C/C++ . Когда вы вносите изменения здесь, VS Code записывает их в файл с именем 9.0014 c_cpp_properties.json в папке .vscode .

Код Visual Studio помещает эти параметры в .vscode\c_cpp_properties.json . Если вы откроете этот файл напрямую, он должен выглядеть примерно так:

 {
  "конфигурации": [
    {
      "имя": "Win32",
      "includePath": ["${workspaceFolder}/**"],
      "определяет": ["_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",
      "cСтандарт": "c11",
      "cppStandard": "С++ 17",
      "intelliSenseMode": "msvc-x64"
    }
  ],
  "версия": 4
}
 

Добавлять в параметр массива Include path нужно только в том случае, если ваша программа включает файлы заголовков, которых нет в вашей рабочей области или в пути стандартной библиотеки.

Путь к компилятору

Параметр CompilerPath является важным параметром в вашей конфигурации. Расширение использует его для определения пути к файлам заголовков стандартной библиотеки C++. Когда расширение знает, где найти эти файлы, оно может предоставлять полезные функции, такие как интеллектуальное завершение и Перейти к определению навигации.

Расширение C/C++ пытается заполнить compilePath расположением компилятора по умолчанию на основе того, что оно находит в вашей системе. Расширение выглядит в нескольких общих местах расположения компилятора.

Порядок поиска compilerPath :

  • Первая проверка для компилятора Microsoft Visual C++Ope
  • Затем найдите g++ в подсистеме Windows для Linux (WSL)
  • Тогда g++ для Mingw-w64.

Если у вас установлены g++ или WSL, вам может потребоваться изменить compilePath , чтобы он соответствовал предпочтительному компилятору для вашего проекта. Для Microsoft C++ путь должен выглядеть примерно так, в зависимости от установленной версии: "C:/Program Files (x86)/Microsoft Visual Studio/2017/BuildTools/VC/Tools/MSVC/14.16.27023/bin /Hostx64/x64/cl.exe".

Повторное использование вашей конфигурации C++

VS Code теперь настроен на использование компилятора Microsoft C++. Конфигурация применяется к текущей рабочей области. Чтобы повторно использовать конфигурацию, просто скопируйте файлы JSON в .vscode в новой папке проекта (рабочей области) и при необходимости измените имена исходных файлов и исполняемого файла.

Запуск VS Code вне командной строки разработчика

В некоторых случаях невозможно запустить VS Code из командной строки разработчика для Visual Studio (например, в сценариях удаленной разработки через SSH). В этом случае вы можете автоматизировать инициализацию командной строки Developer для Visual Studio во время сборки, используя следующие tasks. json конфигурация:

 {
  "версия": "2.0.0",
  "окна": {
    "опции": {
      "оболочка": {
        "исполняемый": "cmd.exe",
        "аргументы": [
          "/С",
          // Путь к VsDevCmd.bat зависит от установленной версии Visual Studio.
          "\"C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/Common7/Tools/VsDevCmd.bat\"",
          "&&"
        ]
      }
    }
  },
  "задачи": [
    {
      "тип": "оболочка",
      "label": "cl.exe активный файл сборки",
      "команда": "cl.exe",
      "аргументы": [
        "/Зи",
        "/ЭХск",
        "/Фе:",
        "${fileDirname}\\${fileBasenameNoExtension}.exe",
        "${файл}"
      ],
      "проблемматчер": ["$msCompile"],
      "группа": {
        "вид": "строить",
        «по умолчанию»: правда
      }
    }
  ]
}
 

Примечание . Путь к VsDevCmd.bat может отличаться в зависимости от версии Visual Studio или пути установки. Вы можете найти путь к VsDevCmd. bat , открыв командную строку и запустив dir "\VsDevCmd*" /s .

Устранение неполадок

Термин «cl.exe» не распознан

Если вы видите ошибку «Термин« cl.exe »не распознан как имя командлета, функции, файла сценария или исполняемой программы». , это обычно означает, что вы используете VS Code за пределами Командная строка разработчика для Visual Studio и VS Code не знает путь к компилятору cl.exe .

VS Code необходимо либо запустить из командной строки разработчика для Visual Studio, либо задача должна быть настроена для запуска вне командной строки разработчика.

Вы всегда можете проверить, что вы используете VS Code в контексте командной строки разработчика, открыв новый терминал (⌃⇧` (Windows, Linux Ctrl+Shift+`)) и введя «cl», чтобы проверить cl.exe доступен для VS Code.

фатальная ошибка C1034: assert.