Каталог расширений

Популярные теги

3gp       avi       fb2       jpg       mp3       pdf      

Как запустить cpp файл


Компиляция вашей первой программы в C++ | Уроки С++

  Обновл. 17 Сен 2020  | 

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

Теория

Во-первых, несмотря на то, что код ваших программ находится в файлах .cpp, эти файлы добавляются в проект. Проект содержит все необходимые файлы вашей программы, а также сохраняет указанные вами настройки вашей IDE. Каждый раз, при открытии проекта, он запускается с того момента, на котором вы остановились в прошлый раз. При компиляции программы, проект говорит компилятору и линкеру, какие файлы нужно скомпилировать, а какие связать. Стоит отметить, что файлы проекта одной IDE не будут работать в другой IDE. Вам придется создать новый проект (в другой IDE).

Во-вторых, есть разные типы проектов. При создании нового проекта, вам нужно будет выбрать его тип. Все проекты, которые мы будем создавать на данных уроках, будут консольного типа. Это означает, что они запускаются в консоли (аналог командной строки). По умолчанию, консольные приложения не имеют графического интерфейса пользователя — GUI (сокр. от «Graphical User Interface») и компилируются в автономные исполняемые файлы. Это идеальный вариант для изучения языка C++, так как он сводит всю сложность к минимуму.

В-третьих, при создании нового проекта большинство IDE автоматически добавят ваш проект в рабочее пространство. Рабочее пространство — это своеобразный контейнер, который может содержать один или несколько связанных проектов. Несмотря на то, что вы можете добавить несколько проектов в одно рабочее пространство, все же рекомендуется создавать отдельное рабочее пространство для каждой программы. Это намного упрощает работу для новичков.

Традиционно, первой программой на новом языке программирования является всеми известная программа «Hello, world!». Мы не будем нарушать традиции 🙂

Пользователям Visual Studio

Для создания нового проекта в Visual Studio 2019, вам нужно сначала запустить эту IDE, затем выбрать "Файл" > "Создать" > "Проект":

Дальше появится диалоговое окно, где вам нужно будет выбрать "Консольное приложение Windows" из вкладки "Visual C++" и нажать "ОК":

Также вы можете указать имя проекта (любое) и его расположение (рекомендую ничего не менять) в соответствующих полях.

В текстовом редакторе вы увидите, что уже есть некоторый текст и код — удалите его, а затем напечатайте или скопируйте следующий код:

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

#include <iostream>

int main()

{

std::cout << "Hello, world!" << std::endl;

return 0;

}

Вот, что у вас должно получиться:

ВАЖНОЕ ПРИМЕЧАНИЕ: Строка #include "pch.h" требуется только для пользователей Visual Studio 2017. Если вы используете Visual Studio 2019 (или более новую версию), то не нужно писать эту строку вообще.

Чтобы запустить программу в Visual Studio, нажмите комбинацию Ctrl+F5. Если всё хорошо, то вы увидите следующее:

Это означает, что компиляция прошла успешно и результат выполнения вашей программы следующий:

Hello, world!

Чтобы убрать строку «…завершает работу с кодом 0…», вам нужно перейти в "Отладка" > "Параметры":

Затем "Отладка" > "Общие" и поставить галочку возле "Автоматически закрыть консоль при остановке отладки" и нажать "ОК":

Тогда ваше консольное окно будет выглядеть следующим образом:


Готово! Мы научились компилировать программу в Visual Studio.

Пользователям Code::Blocks

Чтобы создать новый проект, запустите Code::Blocks, выберите "File" > "New" > "Project":

Затем появится диалоговое окно, где вам нужно будет выбрать "Console application" и нажать "Go":

Затем выберите язык "C++" и нажмите "Next":

Затем нужно указать имя проекта и его расположение (можете создать отдельную папку Projects) и нажать "Next":

В следующем диалоговом окне нужно будет нажать "Finish".

После всех этих манипуляций, вы увидите пустое рабочее пространство. Вам нужно будет открыть папку Sources в левой части экрана и дважды кликнуть по main.cpp:

Вы увидите, что программа «Hello, world!» уже написана!

Для того, чтобы скомпилировать ваш проект в Code::Blocks, нажмите Ctrl+F9, либо перейдите в меню "Build" и выберите "Build". Если всё пройдет хорошо, то вы увидете следующее во вкладке "Build log":

Это означает, что компиляция прошла успешно!

Чтобы запустить скомпилированную программу, нажмите Ctrl+F10, либо перейдите в меню "Build" и выберите "Run". Вы увидите следующее окно:

Это результат выполнения вашей программы.

Пользователям командной строки

Вставьте следующий код в текстовый файл с именем HelloWorld.cpp:

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

#include <iostream>

int main()

{

std::cout << "Hello, world!" << std::endl;

return 0;

}

В командной строке напишите:

g++ -o HelloWorld HelloWorld.cpp

Эта команда выполнит компиляцию и линкинг файла HelloWorld.cpp. Для запуска программы напишите:

HelloWorld

Или:

./HelloWorld

И вы увидите результат выполнения вашей программы.

Пользователям веб-компиляторов

Вставьте следующий код в рабочее пространство:

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

#include <iostream>

int main()

{

std::cout << "Hello, world!" << std::endl;

return 0;

}

Затем нажмите "Run". Вы должны увидеть результат в окне выполнения.

Пользователям других IDE

Вам нужно:

Шаг №1: Создать консольный проект.

Шаг №2: Добавить файл .cpp в проект (если нужно).

Шаг №3: Вставить следующий код в файл .cpp:

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

#include <iostream>

int main()

{

std::cout << "Hello, world!" << std::endl;

return 0;

}

Шаг №4: Скомпилировать проект.

Шаг №5: Запустить проект.

Если компиляция прошла неудачно (a.k.a. «О Боже, что-то пошло не так!»)

Всё нормально, без паники. Скорее всего, это какой-то пустяк.

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

   Во-вторых, просмотрите Урок №7 — там есть решения наиболее распространенных проблем.

   Если всё вышесказанное не помогло — «загуглите» проблему. С вероятностью 90% кто-то уже сталкивался с этим раньше и нашел решение.

Заключение

Поздравляем, вы написали, скомпилировали и запустили свою первую программу на языке C++! Не беспокойтесь, если вы не понимаете, что означает весь этот код, приведенный выше. Мы детально всё это рассмотрим на следующих уроках.

Оценить статью:

Загрузка...

Поделиться в социальных сетях:

Как открыть файл CPP? Расширение файла .CPP

Что такое файл CPP?

Файл CPP является в основном обновленной версией файла CP. Это конкретное расширение файла содержит исходные коды, написанные на языке C ++. Язык C ++ - это компьютерный язык, который предпочитают в качестве базового языка для начинающих программистов.

Когда студент-программист видит файл расширения CPP, он может предположить, что это файл CPP. Это несколько верно, но файл CPP содержит множество определенных файлов CP. Компиляция всех файлов CP в файле CPP выполняет действия приложений.

Программы, которые поддерживают CPP расширение файла

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

Updated: 06/07/2020

Как открыть файл CPP?

Проблемы с доступом к CPP могут быть вызваны разными причинами. К счастью, наиболее распространенные проблемы с файлами CPP могут быть решены без глубоких знаний в области ИТ, а главное, за считанные минуты. Приведенный ниже список проведет вас через процесс решения возникшей проблемы.

Шаг 1. Получить Microsoft Visual Studio

Проблемы с открытием и работой с файлами CPP, скорее всего, связаны с отсутствием надлежащего программного обеспечения, совместимого с файлами CPP на вашем компьютере. Эта проблема может быть решена путем загрузки и установки # РЕКОМЕНДОВАННОЙ # или другой совместимой программы, такой как EditPlus, Eclipse IDE, Code::Blocks. Полный список программ, сгруппированных по операционным системам, можно найти выше. Одним из наиболее безопасных способов загрузки программного обеспечения является использование ссылок официальных дистрибьюторов. Посетите сайт Microsoft Visual Studio и загрузите установщик.

Шаг 2. Обновите Microsoft Visual Studio до последней версии

Если проблемы с открытием файлов CPP по-прежнему возникают даже после установки Microsoft Visual Studio, возможно, у вас устаревшая версия программного обеспечения. Проверьте веб-сайт разработчика, доступна ли более новая версия Microsoft Visual Studio. Разработчики программного обеспечения могут реализовать поддержку более современных форматов файлов в обновленных версиях своих продуктов. Если у вас установлена более старая версия Microsoft Visual Studio, она может не поддерживать формат CPP. Все форматы файлов, которые прекрасно обрабатывались предыдущими версиями данной программы, также должны быть открыты с помощью Microsoft Visual Studio.

Шаг 3. Назначьте Microsoft Visual Studio для CPP файлов

Если у вас установлена последняя версия Microsoft Visual Studio и проблема сохраняется, выберите ее в качестве программы по умолчанию, которая будет использоваться для управления CPP на вашем устройстве. Метод довольно прост и мало меняется в разных операционных системах.

Изменить приложение по умолчанию в Windows

  • Выберите пункт Открыть с помощью в меню «Файл», к которому можно щелкнуть правой кнопкой мыши файл CPP.
  • Выберите Выбрать другое приложение → Еще приложения
  • Последний шаг - выбрать опцию Найти другое приложение на этом... указать путь к папке, в которой установлен Microsoft Visual Studio. Теперь осталось только подтвердить свой выбор, выбрав Всегда использовать это приложение для открытия CPP файлы и нажав ОК .

Изменить приложение по умолчанию в Mac OS

  • Щелкните правой кнопкой мыши на файле CPP и выберите Информация.
  • Найдите опцию Открыть с помощью - щелкните заголовок, если он скрыт
  • Выберите из списка соответствующую программу и подтвердите, нажав « Изменить для всех» .
  • Должно появиться окно с сообщением, что это изменение будет применено ко всем файлам с расширением CPP. Нажимая Вперед, вы подтверждаете свой выбор.
Шаг 4. Проверьте CPP на наличие ошибок

Вы внимательно следили за шагами, перечисленными в пунктах 1-3, но проблема все еще присутствует? Вы должны проверить, является ли файл правильным CPP файлом. Вероятно, файл поврежден и, следовательно, недоступен.

1. CPP может быть заражен вредоносным ПО - обязательно проверьте его антивирусом.

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

2. Убедитесь, что файл с расширением CPP завершен и не содержит ошибок

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

3. Проверьте, есть ли у вашей учетной записи административные права

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

4. Убедитесь, что ваше устройство соответствует требованиям для возможности открытия Microsoft Visual Studio

Операционные системы могут иметь достаточно свободных ресурсов для запуска приложения, поддерживающего файлы CPP. Закройте все работающие программы и попробуйте открыть файл CPP.

5. Проверьте, есть ли у вас последние обновления операционной системы и драйверов

Современная система и драйверы не только делают ваш компьютер более безопасным, но также могут решить проблемы с файлом C++ Source Code Format. Возможно, что одно из доступных обновлений системы или драйверов может решить проблемы с файлами CPP, влияющими на более старые версии данного программного обеспечения.

C++ - Visual Studio Включить файл cpp из другого проекта

У меня есть C ++ .h и .cpp файл из другого проекта, который я хочу включить в свой проект.
Я не хочу копировать файлы в свой проект, так как я хочу, чтобы любые изменения этих файлов были применены к обоим проектам.

Я включил каталог папки файла в

Свойства-> Каталоги VC ++-> Включить каталоги

Я также включил папку в

Свойства-> C / C ++ -> Общие -> Дополнительные каталоги включения

Кажется, что файлы .h работают. Если я переименую включить что-либо, кроме

#include «myfile.h»

Файл cpp получает неизвестные определения.

Когда я компилирую. Ошибка

фатальная ошибка C1083: не удается открыть исходный файл: ‘.. \ .. \ .. \ .. \ .. \ .. \ my project \ myfile.cpp’: такого файла или каталога нет

Если я удалю файл cpp из проекта. Затем я получаю длинный список нерешенных функций.

ошибка LNK2019: неразрешенный внешний символ «public: unsigned long __thiscall myclass :: myfunction»

Как я могу включить файлы .h и .cpp во второй проект?

1

Решение

Для файлов cpp вы можете просто щелкнуть правой кнопкой мыши по проекту, выбрать «добавить» -> существующий элемент.
Затем они должны скомпилироваться с другими, когда начнется сборка.

Чуть сложнее с заголовками. Существует два способа использования директивы #include:
с < > и «» брекеты

Когда используются «» фигурные скобки, компилятор обрабатывает путь как относительное (если не абсолютное использование) к местоположению файла cpp.

когда < > Используются фигурные скобки, компилятор ищет файл в чем-то вроде системных папок включения. Например — папка заголовков stdlib и папка расположения windows.h. Свойства записи Дополнительные каталоги включения и идет туда.

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

#include "mylibHeaderDir/someheader.h"

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

#include <myLibHeaderDir/someheader.h> 

Этот подход поможет вам в будущем, так как вы можете повторно использовать этот общий модуль в каждом проекте, который вы хотите.

О том, как создать и связать статическую библиотеку, вы можете прочитать в этой статье. http://msdn.microsoft.com/en-us/library/vstudio/ms235627(v=vs.110).aspx Версии визуальной студии могут отличаться, но основы одинаковы.

2

Другие решения

Попробуйте перетащить их в свое решение?
Вы можете создать новую папку в своем решении и перетащить их все в эту папку!

0

Вы не можете просто выбрать такие файлы. Есть два разумных способа решить это. 1, предоставил общий доступ к файлу с помощью системы управления версиями кода (например, svn / git). 2, скомпилируйте .cpp в библиотеку и создайте ссылку на эту библиотеку.

0

Если cpp может использоваться несколькими проектами, это должно означать, что код является чем-то общим. Это означает, что вы должны скомпилировать этот код в библиотеку, а затем совместно использовать эту библиотеку. Компиляция одного и того же cpp в несколько библиотек может привести к конфликтам позже, если две такие библиотеки когда-либо понадобятся для совместной работы.

0

Первая программа в Visual Studio

Первая программа в Visual Studio

Последнее обновление: 28.08.2017

Для создания программы на C++ нам нужны, как минимум, две вещи: текстовый редактор для набора кода и компилятор для превращения этого кода в приложение. При этом для компиляции необходимо запускать консоль или терминал. Однако есть и более удобный способ - использование различных сред разработки или IDE. Они, как правило, содержит встроенный текстовый редактор, компилятор и позволяют скомпилировать и запустить программу по одному клику мыши, а также имеют еще множество разных вспомогательных возможностей.

Для программирования под Windows наиболее популярной средой разработки, если говорить о C++, является Visual Studio. Данную среду можно найти по ссылке https://www.visualstudio.com/ru/vs/. Она доступна в ряде редакций. В частности, можно использовать бесплатную и полнофункциональную версию Visual Studio 2017 Community.

После загрузки и запуска установщика Visual Studio в нем необходимо отметить пункт "Разработка классических приложений на C++":

Выбрав все необходимые пункты, нажмем ОК для запуска установки. После установки Visual Studio создадим первый проект. Для этого перейдем в меню File (Файл) -> New (Создать) -> Project... (Проект), и нам откроется окно создания нового проекта. В нем перейдем в левой части окна к языку С++ и выберем его подсекцию General:

В центральной части окна в качестве типа проекта выберем Empty Project, а внизу окна в поле для имени проекта дадим проекту имя HelloApp и нажмем на ОК для создания проекта.

После этого Visual Studio создаст пустой проект. Добавим в него текстовый файл для набора исходного кода. Для этого в окне Solution Explorer (Обозреватель решений) нажмем правой кнопкой мыши на узел Source Files и в контекстом меню выберем Add -> New Item...:

Затем нам откроется окно для добавления нового элемента:

Здесь нам надо выбрать пункт C++ File(.cpp), а внизу окна укажем для файла имя Hello.cpp. Как правило, исходные файлы на C++ имеют расширение .сpp.

После добавления файла изменим опции проекта. Для этого перейдем к пункту меню Project -> Properties:

И в открывшемся окне свойств проекта в левой части перейдем к секции Linker ->System и далее для поля SubSystem установим значение Console(/SUBSYSTEM:CONSOLE), выбрав нужный элемент в списке:

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

После добавления файла проект будет иметь следующую структуру:

Вкратце пробежимся по этой структуре. Окно Solution Explorer содержит в решение. В данном случае оно называется HelloApp. Решение может содержать несколько проектов. По умолчанию у нас один проект, который имеет то же имя - HelloApp. В проекте есть ряд узлов:

  • External Dependencies: отображает файлы, которые используются в файлах исходного кода, но не являются частью проекта

  • Header Files: предназначена для хранения заголовочных файлов с расширением .h

  • Resource Files: предназначена для хранения файлов ресурсов, например, изображений

  • Source Files: хранит файлы с исходным кодом

Теперь собственно создадим первую программу и определим в файле Hello.cpp простейший код, который будет выводить строку на консоль:


 #include <iostream> // подключаем заголовочный файл iostream
 
 int main() // определяем функцию main
 { // начало функции
 std::cout << "Hello World!"; // выводим строку на консоль
 return 0; // выходим из функции
 } 
 

Здесь использован весь тот код, который был рассмотрен в предыдущих темах про компиляцию с помощью g++.

Теперь запустим программу. Для этого в Visual Studio нажмем на сочетание клавиш Ctrl+F5 или выберем пункт меню Debug -> Start Without Debugging:

И в итоге Visual Studio передаст исходный код компилятору, который скомпилирует из кода исполняемый файл exe, который потом будет запущен на выполнение. И мы увидим на запущенной консоли наше сообщение:

После этого на жестком диске в проекте в папке Debug можно увидеть скомпилированный файл exe, который мы можем запускать независимо от Visual Studio:

В данном случае файл HelloApp.exe как раз и представляет скомпилированный исполняемый файл. И, кроме того, в той же папке автоматически генерируются два вспомогательных файла:

  • HelloApp.ilk: файл "incremental linker", который используется компоновщиком для ускорения компоновки

  • HelloApp.pdb: файл, который содержит отладочную информацию

Компиляция C++ кода с помощью g++

Для этого урока у вас должна быть установлена программа g++. g++ - производное имя от gcc. gcc - компилятор языка C. Имя gcc образовано от GNU C Compiler. GNU - операционная система, а также это набор свободного ПО, включая gcc и g++ (компиляторы C/C++).

Если вы используете Linux, то g++ уже установлен.

g++ для Windows

Есть пара вариантов, как установить g++ на Windows. Cygwin и MinGW32. MinGW имеет версию для архитектуры x86-64. И именно её мы и будем использовать. Скачайте MinGW-W64, установите, а затем найдите mingw в меню Пуск (MinGW-W64 -> Run Terminal), или зайдите в папку с программой в проводнике (нужно запускать файл mingw-w64.bat). Вы увидите командную строку Windows.

Работа с командной строкой Windows

Если вы никогда не использовали командную строку, то вот несколько полезных команд:

d: c: cd folder1 cd ..

Имя диска с двоеточием - перейти на определённый диск. Например, я храню код на диске D, поэтому моей первой командой будет:

d:

cd - изменить директорию (change directory). Эта команда переместит вас в нужную директорию. Я храню код для данных уроков в папке: d:\prog\cpp. Поэтому, после того как я выбрал диск D, я обычно ввожу следующую команду:

cd prog\cpp

cd .. (две точки) переместит вас в папку выше.

Исходный код

Создайте файл hello_world.cpp в папке, где вы планируете хранить свой код. Откройте его в простом текстовом редакторе: Notepad/Gedit/Notepad++/Sublime... И вставьте следующий текст:

#include <iostream> int main() { cout << "Hello World\n"; return 0; }

Эта программа напечатает строку Hello World в консоли. Мы обсудим, что означает данный код, в следующем уроке.

Весь код хранится в простых текстовых файлах - это исходный код. Чтобы его выполнить, нужно сначала его скомпилировать. Откройте папку где вы сохранили исходный код в командной строке.

Компиляция C++ кода с помощью компилятора g++

g++ <filename>

g++ hello_world.cpp

После выполнения данной команды, в текущей директории будут создан файл: a.out или a.exe. Чтобы запустить программу, введите имя файла в консоли и нажмите Ввод (Enter). В консоли вы увидите текст Hello World. После этого программа сразу завершится.

a.out - имя по умолчанию для скомпилированных файлов. Мы можем изменить его:

g++ -o <output_filename> <filename> g++ -o hello_world.exe hello_world.cpp

Выполнив последнюю команду, мы получим файл hello_world.exe. После этого в Windows скомпилированную программу можно выполнить следующей командой:

hellow_world.exe

А в Linux:

./a.out

Компиляция (compilation) и связывание (linking)

Во время компиляции происходит два шага. Первый - компиляция файлов с исходным кодом. Результат этого шага: объектный код. Объектный код помещается в файлы с расширением .o. Следующий шаг - связывание (linking). Специальная программа - компоновщик (linker), берёт объектные файлы и "связывает" их вместе. Компоновщик необходим, когда есть больше одного файла с исходным кодом. Пока наши программы будут состоять из одного файла. Но в будущем нам понадобится компоновщик.

Заключение

Мы рассмотрели как компилируется C++ код с помощью компилятора g++. Теперь мы готовы к изучению C++. А начнём мы с разбора программы Hello World.

Упражнения

  1. Скомпилируйте hello_world.cpp

Запуск C++ в командной строке-Windows

Я действительно не понимаю, в чем ваша проблема, вопрос довольно неопределенный. Учитывая Notepad++ я предполагаю, что вы используете Windows.

у вас так много вариантов здесь, из MinGW (используя цепочку инструментов GCC и GNU make) для использования современного MSVC. Вы можете использовать WDK (ddkbuild.bat/.cmd или обычный build.exe), то Windows SDK (nmake.exe), другие инструменты, такие как premake и CMake или msbuild это поставляется с MSVC и Windows пакет SDK.

Я имею в виду, что имена компиляторов будут отличаться,cl.exe для MSVC и WDK и Windows SDK,gcc.exe для MinGW, но даже с консоли принято каким-то образом организовывать свой проект. Это make и друзья были изобретены в конце концов.

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

боковое Примечание: нет необходимости просить людей не упоминать Иды. Большинство профессиональных разработчиков автоматизировали свои сборки для запуска из командной строки, а не из среды IDE (например, во время цикла разработки), потому что у этого подхода так много преимуществ.

c ++ - есть ли способ скомпилировать и запустить один файл .cpp в проекте Visual Studio Express '12?

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
.

Начало работы с C ++ в Linux в Visual Studio Code

В этом руководстве вы настроите Visual Studio Code для использования компилятора GCC C ++ (g ++) и отладчика GDB в Linux. GCC означает Сборник компиляторов GNU; GDB - это отладчик GNU.

После настройки VS Code вы скомпилируете и отладите простую программу на C ++ в VS Code. Это руководство не обучает вас языку GCC, GDB, Ubuntu или C ++. По этим предметам в Интернете доступно множество хороших ресурсов.

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

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

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

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

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

Убедитесь, что установлен GCC

Хотя вы будете использовать VS Code для редактирования исходного кода, вы скомпилируете исходный код в Linux с помощью компилятора g ++.Вы также будете использовать GDB для отладки. Эти инструменты не устанавливаются по умолчанию в Ubuntu, поэтому вам необходимо установить их. К счастью, это легко.

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

  gcc -v  

Если GCC не установлен, выполните следующую команду из окна терминала, чтобы обновить списки пакетов Ubuntu. Устаревший дистрибутив Linux может иногда мешать попыткам установить новые пакеты.

  обновление sudo apt-get  

Затем установите инструменты компилятора GNU и отладчик GDB с помощью этой команды:

  sudo apt-get install build-essential gdb  

Создать Hello World

В окне терминала создайте пустую папку с именем projects для хранения ваших проектов VS Code. Затем создайте вложенную папку с именем helloworld , перейдите в нее и откройте VS Code в этой папке, введя следующие команды:

  мкдир проектов cd проекты mkdir helloworld cd helloworld код. 

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

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

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

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

Вставьте следующий исходный код:

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

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

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

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

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

Изучите IntelliSense

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

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

Сборка helloworld.cpp

Затем вы создадите файл tasks.json , чтобы сообщить VS Code, как построить (скомпилировать) программу. Эта задача вызовет компилятор g ++ для создания исполняемого файла из исходного кода.

Важно, чтобы в редакторе был открыт helloworld.cpp , потому что на следующем шаге активный файл в редакторе используется в качестве контекста для создания задачи сборки на следующем шаге.

В главном меню выберите Терминал > Настроить задачу сборки по умолчанию .В раскрывающемся списке показаны различные предопределенные задачи сборки для компиляторов C ++. Выберите C / C ++: g ++ построить активный файл .

Это создаст файл tasks.json в папке .vscode и откроет его в редакторе.

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

  { "версия": "2.0.0", "задания": [ { "тип": "оболочка", "label": "g ++ построить активный файл", "команда": "/ usr / bin / g ++", "args": ["-g", "$ {file}", "-o", "$ {fileDirname} / $ {fileBasenameNoExtension}"], "параметры": { "cwd": "/ usr / bin" }, "проблемаМэтчер": ["$ gcc"], "group": { "вид": "строить", "isDefault": true } } ] }  

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

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

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

Ярлык Значение - это то, что вы увидите в списке задач; вы можете называть это как хотите.

Значение «isDefault»: true в объекте группы указывает, что эта задача будет запущена при нажатии ⇧⌘B (Windows, Linux Ctrl + Shift + B). Это свойство предназначено только для удобства; Если вы установите для него значение false, вы все равно можете запустить его из меню «Терминал» с помощью «Задачи : Выполнить задачу сборки ».

Запуск сборки

  1. Вернуться на helloworld.cpp . Ваша задача создает активный файл, и вы хотите собрать helloworld.cpp .

  2. Чтобы запустить задачу сборки, определенную в tasks.json , нажмите ⇧⌘B (Windows, Linux Ctrl + Shift + B) или в главном меню Terminal выберите Run Build Task .

  3. При запуске задачи вы должны увидеть панель «Интегрированный терминал» под редактором исходного кода. После завершения задачи терминал показывает вывод компилятора, который указывает, успешно ли завершилась сборка.Для успешной сборки g ++ результат выглядит примерно так:

  4. Создайте новый терминал с помощью кнопок + , и у вас будет терминал, на котором запущена оболочка по умолчанию с папкой helloworld в качестве рабочего каталога. Запустите ls , и теперь вы должны увидеть исполняемый файл helloworld (без расширения файла).

  5. Вы можете запустить helloworld в терминале, набрав ./ helloworld .

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

Вы можете изменить свой tasks.json для создания нескольких файлов C ++, используя аргумент типа "$ {workspaceFolder} / *. Cpp" вместо $ {file} . Вы также можете изменить имя выходного файла, заменив "$ {fileDirname} / $ {fileBasenameNoExtension}" жестко заданным именем файла (например, 'helloworld.out').

Отладка helloworld.cpp

Затем вы создадите запуск .json , чтобы настроить VS Code для запуска отладчика GDB при нажатии F5 для отладки программы.

В главном меню выберите Выполнить > Добавить конфигурацию ... , а затем выберите C ++ (GDB / LLDB) .

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

VS Code создает файл launch.json , открывает его в редакторе, создает и запускает helloworld.

  { "версия": "0.2.0", "конфигурации": [ { "name": "g ++ построить и отладить активный файл", "тип": "cppdbg", "запрос": "запуск", "program": "$ {fileDirname} / $ {fileBasenameNoExtension}", "аргументы": [], "stopAtEntry": ложь, "cwd": "$ {workspaceFolder}", "окружающая обстановка": [], "externalConsole": ложь, "MIMode": "gdb", "setupCommands": [ { "description": "Включить красивую печать для gdb", "text": "-enable-pretty-Printing", "ignoreFailures": true } ], "preLaunchTask": "g ++ построить активный файл", «miDebuggerPath»: «/ usr / bin / gdb» } ] }  

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

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

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

Запустить сеанс отладки

  1. Вернитесь к helloworld.cpp , чтобы он стал активным файлом.
  2. Нажмите F5 или в главном меню выберите Выполнить> Начать отладку . Прежде чем приступить к выполнению кода, давайте заметим несколько изменений в пользовательском интерфейсе:
  • Интегрированный терминал появляется в нижней части редактора исходного кода. На вкладке Debug Output вы видите выходные данные, указывающие, что отладчик запущен и работает.

  • Редактор выделяет первый оператор в методе main . Это точка останова, которую расширение C ++ автоматически устанавливает для вас:

  • В представлении «Выполнить» слева отображается отладочная информация. Позже в руководстве вы увидите пример.

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

Введите код

Теперь вы готовы приступить к пошаговому выполнению кода.

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

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

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

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

  4. Если хотите, можете продолжать нажимать Step over , пока все слова в векторе не будут напечатаны на консоли. Но если вам интересно, попробуйте нажать кнопку « Step Into », чтобы просмотреть исходный код в стандартной библиотеке C ++!

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

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

    Когда цикл завершится, вы можете увидеть вывод на вкладке Debug Console интегрированного терминала вместе с некоторой другой диагностической информацией, которую выводит GDB.

Набор часов

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

  1. Поместите точку вставки внутрь петли. В окне Watch щелкните знак «плюс» и в текстовом поле введите слово , которое является именем переменной цикла.Теперь просмотрите окно Watch по мере прохождения цикла.

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

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

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

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

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

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

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

  { "конфигурации": [ { "name": "Linux", "includePath": ["$ {workspaceFolder} / **"], "определяет": [], "compilerPath": "/ usr / bin / gcc", "cStandard": "c11", "cppStandard": "c ++ 17", "intelliSenseMode": "clang-x64" } ], «версия»: 4 }  

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

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

Поиск и устранение неисправностей

Ошибки компилятора и компоновки

Наиболее частая причина ошибок (например, undefined _main или попытка связи с файлом, созданным для неизвестного неподдерживаемого формата файла и т. Д.) Возникает, когда helloworld.cpp не является активным файлом при запуске сборки или отладки. Это потому, что компилятор пытается скомпилировать что-то, что не является исходным кодом, например файл launch.json , tasks.json или c_cpp_properties.json .

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

19.03.2020

.

c ++ - невозможно запустить файл cpp с помощью scons

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
.

c ++ - как вызывать функции из одного файла .cpp в другом файле .cpp?

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант
.

Смотрите также