Как создать проект с в visual studio
Перейти к содержимому

Как создать проект с в visual studio

  • автор:

Среды разработки для С

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

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

Установка С++ в Visual Studio

Выбрав все необходимые пункты, нажмем ОК для запуска установки. После установки Visual Studio создадим первый проект. Для этого откроем Visual Studio. На стартовом экране выберем тип Empty Project для языка C++:

Первый проект на Си в Visual Studio

На следующем экране в поле для имени проекта дадим проекту имя HelloApp и также можно указать расположение проекта. И затем нажмем на Create для создания проекта.

Первый проект на Си в Visual Studio

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

Добавление файла на Си в Visual Studio

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

Добавление исходного файла на Си в Visual Studio

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

Настройка проекта

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

Свойства проекта на Си в Visual Studio

В окне свойств проекта в левой части перейдем к секции С/С++ и далее к пункту Advanced :

Установка компилятора для языка Си в VS

В правой части окна для поля Compile As установим значение Compile as C Code (/TC) . Тем самым мы говорим, чтобы по умолчанию исходный код компилировался именно как код С, а не С++.

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

Для работы с языком Си может быть полезна еще одна настройка — установка стандарта языка. Перейдем к пункту С/С++ -> Language . Здесь в поле C Language Standard мы можем установить один из доступных стандартов для языка Си, который будет применяться для компиляции:

Настройка стандарта языка Си в Visual Studio

Правда, в данном случае он не играет значения, поэтому оставим для этого параметра настройку по умолчанию.

Определение кода программы

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

Структура проекта на Си в Visual Studio

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

  • External Dependencies : отображает файлы, которые используются в файлах исходного кода, но не являются частью проекта
  • Header Files : предназначена для хранения заголовочных файлов с расширением .h
  • Resource Files : предназначена для хранения файлов ресурсов, например, изображений
  • Source Files : хранит файлы с исходным кодом

Теперь определим в файле hello.c простейший код, который будет выводить строку на консоль:

#include // подключаем заголовочный файл stdio.h int main(void) // определяем функцию main < // начало функции printf("Hello METANIT.COM!\n"); // выводим строку на консоль return 0; // выходим из функции >// конец функции

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

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

Запуск программы на Си в Visual Studio

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

Первое приложение на языке программирования Си

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

Компиляция кода на языке программирования Си

В данном случае файл HelloApp.exe как раз и представляет скомпилированный исполняемый файл.

Создание проекта консольного приложения С++

Обычно программист C++ начинает с создания приложения «Hello, world!», которое запускается из командной строки. Это то, что вы создаете в Visual Studio на этом шаге.

Необходимые компоненты

  • Установите и запустите на своем компьютере Visual Studio с рабочей нагрузкой Разработка классических приложений на C++. Если установка еще не выполнена, см. статью Установка поддержки C++ в Visual Studio.

Создание проекта приложения

Visual Studio использует проекты, чтобы упорядочить код для приложения, и решения, чтобы упорядочить проекты. Проект содержит все параметры, конфигурации и правила, используемые для сборки приложения. Он управляет связью между всеми файлами проекта и любыми внешними файлами. Чтобы создать приложение, сначала создайте проект и решение.

Screenshot of the create a new project dialog.

  1. В Visual Studio откройте меню «Файл» и выберите «Создать > проект «, чтобы открыть диалоговое окно «Создать проект «. Выберите шаблон Консольное приложение с тегами C++, Windows и Консоль, а затем нажмите кнопку Далее.

Диалоговое окно создания проекта с выбранным шаблоном консольного приложения. Этот шаблон говорит: запуск кода в терминале Windows. По умолчанию выводит hello world. Содержит теги c++, Windows и консоль.

Screenshot of Configure your new project dialog.

В диалоговом окне Настроить новый проект в поле Имя проекта введите HelloWorld. Выберите Создать, чтобы создать проект.

Диалоговое окно «Настройка нового проекта» с помощью HelloWorld, введенного в поле «Имя проекта».

Screenshot of the NEW Hello World project.

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

Отображает новый проект. Файл HelloWorld.cpp открыт, отображая код по умолчанию, включенный в этот шаблон. Этот код состоит из #include iostream и функции main(), содержащей строку: std::cout helloworld.sln файл) в проводник.

Если в диалоговом окне Новый проект в списке Установленные нет элемента Visual C++, возможно, в вашей копии Visual Studio не установлена рабочая нагрузка Разработка классических приложений на C++. Установщик можно запустить прямо из диалогового окна Новый проект. Чтобы снова запустить установщик, щелкните ссылку Открыть Visual Studio Installer. Если в диалоговом окне Контроль учетных записей пользователей запрашиваются разрешения, выберите Да. При необходимости обновите установщик. В установщике должна быть выбрана рабочая нагрузка Разработка классических приложений на C++. Нажмите кнопку ОК, чтобы обновить установку Visual Studio.

Если проект с таким именем уже существует, выберите другое имя для проекта. Можно также удалить существующий проект и повторить попытку. Чтобы удалить существующий проект, удалите папку решения (папку, содержащую helloworld.sln файл) в проводник.

Настройка проекта как консольного приложения: проблемы

Если в списке Свойства конфигурации нет элемента Компоновщик, нажмите кнопку Отмена, чтобы закрыть диалоговое окно Страницы свойств. Перед повторной попыткой убедитесь в том, что в обозревателе решений выбран проект HelloWorld. Не выбирайте решение HelloWorld или другой объект в обозревателе решений.

Раскрывающийся список не открывается в поле свойства Подсистема, пока не будет выбрано свойство. Щелкните поле ввода, чтобы выбрать его. Можно также последовательно переходить по элементам управления в диалоговом окне с помощью клавиши TAB, пока не будет выделено поле Подсистема. Щелкните раскрывающийся список или нажмите клавиши ALT+стрелка вниз, чтобы открыть его.

Добавление файла исходного кода: проблемы

Файлу исходного кода можно спокойно присвоить другое имя. Однако не добавляйте в проект несколько файлов с одинаковым кодом.

Если вы добавили в проект файл неправильного типа, например файл заголовка, удалите его и повторите попытку. Чтобы удалить файл, выберите его в обозревателе решений. Затем нажмите клавишу DELETE.

Добавление кода в файл исходного кода: проблемы

Если вы случайно закрыли окно редактора с файлом исходного кода, его можно легко открыть снова. Чтобы сделать это, дважды щелкните файл HelloWorld.cpp в окне обозревателя решений.

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

Создание проекта в Visual Studio

В этой статье мы расскажем, как быстро создать новый проект из шаблона в Visual Studio.

Открытие диалогового окна «Создание проекта»

Создать проект в Visual Studio можно несколькими способами. При первом открытии Visual Studio отображается начальное окно, где можно выбрать элемент Создать проект.

Screenshot of the

Если среда разработки Visual Studio уже открыта, проект можно создать, выбрав Файл>Создать>Проект в строке меню. А также нажав кнопку Создать проект на панели инструментов, или нажав комбинацию клавиш CTRL+SHIFT+N.

Screenshot of the New Project button in Visual Studio 2019.

Открытие диалогового окна «Создание проекта»

Создать проект в Visual Studio можно несколькими способами. При первом открытии Visual Studio отображается начальное окно, где можно выбрать элемент Создать проект.

Screenshot of the

Если среда разработки Visual Studio уже открыта, проект можно создать, выбрав Файл>Создать>Проект в строке меню. А также нажав кнопку Создать проект на панели инструментов, или нажав комбинацию клавиш CTRL+SHIFT+N.

Screenshot of the New Project button in Visual Studio 2022.

Выбор типа шаблона

В левой части диалогового окна Создание проекта отображается список недавно выбранных шаблонов. Они отсортированы по времени использования.

Если вы не выбираете один из недавно использованных шаблонов, то можете отфильтровать все доступные шаблоны проектов по параметрам Язык (например, C# или C++), Платформа (например, Windows или Azure) и Тип проекта (например, «Классический» или «Интернет»). Кроме того, можно ввести искомый текст в поле поиска для дальнейшей фильтрации шаблонов, например asp.net.

Screenshot of the project template filters in Visual Studio 2019.

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

Если вы не видите нужный шаблон, возможно, для Visual Studio отсутствует рабочая нагрузка. Для установки дополнительных рабочих нагрузок, таких как Разработка для Azure или Разработка мобильных приложений на .NET, щелкните ссылку Установка других средств и компонентов, чтобы открыть Visual Studio Installer. В нем выберите рабочие нагрузки, которые нужно установить, а затем — Изменить. После этого будут доступны дополнительные шаблоны проектов.

Screenshot of the

Выберите шаблон и нажмите кнопку Далее.

Screenshot of the project template filters in Visual Studio 2022.

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

Если вы не видите нужный шаблон, возможно, для Visual Studio отсутствует рабочая нагрузка. Для установки дополнительных рабочих нагрузок, таких как Разработка для Azure или Разработка мобильных приложений на .NET, щелкните ссылку Установка других средств и компонентов, чтобы открыть Visual Studio Installer. В нем выберите рабочие нагрузки, которые нужно установить, а затем — Изменить. После этого будут доступны дополнительные шаблоны проектов.

Screenshot of the

Выберите шаблон и нажмите кнопку Далее.

Настройка нового проекта

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

Screenshot of the

Если вы создаете проект, когда в Visual Studio уже открыт проект или решение, доступен дополнительный параметр конфигурации. Вы можете создать решение или добавить новый проект в уже открытое решение.

Screenshot of the

Щелкните Создать, чтобы создать проект.

Настройка нового проекта

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

Screenshot showing the Configure your new project dialog in Visual Studio 2022 and the options to set, including the project name and project location.

В диалоговом окне Дополнительные сведения содержатся параметры для выбора версии платформы, типа проверки подлинности и т. д.

Screenshot of the Additional Information dialog in Visual Studio 2022 showing the selected .NET Framework version for the new project.

Щелкните Создать, чтобы создать проект.

Добавление другого проекта в решение

Если вы хотите добавить другой проект в решение, щелкните правой кнопкой мыши узел решения в Обозреватель решений и выберите пункт «Добавить >новый проект».

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

Связанный контент

Учебник. Создание простого консольного приложения C# в Visual Studio (часть 1 из 2)

Изучая этот учебник, вы создадите и запустите консольное приложение C# с помощью Visual Studio, а также ознакомитесь с некоторыми возможностями интегрированной среды разработки (IDE) Visual Studio. Этот учебник представляет собой первую часть серии, состоящей из двух частей.

В этом руководстве выполняются следующие задачи:

  • Создание проекта Visual Studio
  • Создание консольного приложения C#
  • Запустите отладку приложения.
  • Закрытие приложения
  • Проверка готового кода

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

Необходимые компоненты

Необходимо установить Visual Studio.

Установите Visual Studio бесплатно со страницы скачиваемых материалов Visual Studio, если еще не сделали этого.

Создание проекта

Сначала создайте проект приложения C#. Для этого типа проекта уже имеются все нужные файлы шаблонов.

Screenshot that shows the Create a new project window.

  1. Откройте Visual Studio и выберите «Создать проект » в окне «Пуск».
  2. В окне Создание проекта выберите C# в списке языков. Затем выберите Windows в списке платформ и Консоль в списке типов проектов. Применив фильтры по языку, платформе и типу проекта, выберите шаблон Консольное приложение и щелкните Далее.

Примечание. Если шаблон Консольное приложение не отображается, выберите Установка других средств и компонентов. Screenshot that shows the Install more tools and features link.В установщике Visual Studio выберите кроссплатформенную рабочую нагрузку разработки .NET Core. Screenshot showing the .NET Core cross-platform development workload in the Visual Studio Installer.В Visual Studio Installer выберите Изменить. Вам может быть предложено сохранить результаты работы. Нажмите кнопку «Продолжить», чтобы установить рабочую нагрузку. Вернитесь к шагу 2 в процедуре Создание проекта.

  • В поле Имя проекта окна Настроить новый проект введите Calculator. Затем выберите Далее. Screenshot that shows how to name your project
  • Убедитесь, что в окне Дополнительные сведения, в поле Целевая платформа отображается значение .NET Core 3.1. Затем выберите Создать. Screenshot of the Additional information window in Visual Studio showing .NET Core 3.1 as the target framework for the new project.
  • Visual Studio открывает новый проект, включающий код по умолчанию «Hello World». Чтобы просмотреть его в редакторе, выберите файл кода Program.cs в окне Обозревателя решений, которое обычно находится в правой части Visual Studio.

    Код «Hello World» по умолчанию вызывает метод WriteLine для отображения литеральной строки «Hello, World!» в окне консоли. Если нажать клавишу F5, программа по умолчанию запустится в режиме отладки. После запуска приложения в отладчике окно консоли остается открытым. Для закрытия окна консоли нажмите любую клавишу.

    Screenshot that shows the Create a new project window.

    1. Откройте Visual Studio и выберите «Создать проект » в окне «Пуск».
    2. В окне Создать проект выберите Все языки, а затем в раскрывающемся списке выберите C#. Выберите Windows в списке Все платформы. Затем в списке Все типы проектов выберите Консоль. Применив фильтры по языку, платформе и типу проекта, выберите шаблон Консольное приложение и нажмите Далее.

    Примечание. Если шаблон Консольное приложение не отображается, щелкните Установка других средств и компонентов. Screenshot that shows the Install more tools and features link.В установщике Visual Studio выберите рабочую нагрузку разработки классических приложений .NET. Screenshot showing the .NET desktop development workload in the Visual Studio Installer.В Visual Studio Installer выберите Изменить. Вам может быть предложено сохранить результаты работы. Нажмите кнопку «Продолжить», чтобы установить рабочую нагрузку. Вернитесь к шагу 2 в процедуре Создание проекта.

  • В окне Настроить новый проект введите Calculator в поле Имя проекта, а затем щелкните Далее. Screenshot that shows how to name your project
  • В окне «Дополнительные сведения» выберите .NET 8.0 для поля Target Framework. Затем выберите Создать. Screenshot of the Additional information window in Visual Studio showing .NET 8.0 selected as the target framework for the new project.
  • Visual Studio открывает новый проект, включающий код по умолчанию «Hello World». Чтобы просмотреть его в редакторе, выберите файл кода Program.cs в окне Обозревателя решений, которое обычно находится в правой части Visual Studio.

    Один оператор кода вызывает метод WriteLine для отображения литеральной строки «Hello, World!» в окне консоли. Если нажать клавишу F5, программа по умолчанию запустится в режиме отладки. После запуска приложения в отладчике окно консоли остается открытым. Для закрытия окна консоли нажмите любую клавишу.

    Начиная с .NET 6, новые проекты, использующие шаблон консоли, создают не такой код, как в предыдущих версиях. Дополнительные сведения см. на странице Новые шаблоны C# для создания инструкций верхнего уровня.

    Создание приложения

    В этом разделе описаны следующие задачи:

    • Ознакомление с некоторыми базовыми расчетами для целых чисел в C#.
    • Добавление кода для создания простого приложения калькулятора.
    • Отладка приложения для поиска и исправления ошибок.
    • Оптимизация кода для повышения эффективности.

    Вычисления с целыми числами

    Давайте начнем с базовых расчетов для целых чисел в C#.

    Screenshot that shows deleting the default Hello World code from your new calculator app.

    1. В редакторе кода удалите созданный по умолчанию код Hello, World!. В частности, удалите строку с текстом: Console.WriteLine(«Hello World!»); .
    2. На его месте введите следующий код:
     int a = 42; int b = 119; int c = a + b; Console.WriteLine(c); Console.ReadKey(); 

    Обратите внимание, что при вводе кода функция IntelliSense в Visual Studio предлагает возможность автозавершения записи.

  • Нажмите зеленую кнопку «Пуск » рядом с калькулятором , чтобы создать и запустить программу, или нажмите клавишу F5. Screenshot that shows choosing the Calculator button to run the app from the toolbar.Откроется окно консоли с суммой 42 + 119, которая равна 161. Screenshot that shows a console window with the results of integer math.
  • (Необязательно) Можно изменить оператор, чтобы изменить результат. Например, можно изменить оператор + в строке кода int c = a + b; на — для вычитания, * для умножения или / для деления. Затем при запуске программы результат также изменится.
  • Закройте окно консоли.
  • Screenshot that shows the line to replace in the program file.

    1. В разделе Обозреватель решений в области справа выберите Program.cs, чтобы отобразить файл в редакторе кода.
    2. В редакторе кода замените код по умолчанию Hello World ( Console.WriteLine(«Hello World!»); ). Замените строку следующим кодом:
     int a = 42; int b = 119; int c = a + b; Console.WriteLine(c); Console.ReadKey(); 

    Если ввести код, функция IntelliSense Visual Studio предлагает возможность автозавершения записи.

  • Чтобы создать и запустить приложение, нажмите клавишу F5 или выберите зеленую стрелку рядом с элементом Calculator на верхней панели инструментов. Screenshot that showing selecting the Calculator button to run the app from the Debug toolbar.Откроется окно консоли с суммой 42 + 119, которая равна 161. Screenshot of a Console window showing the results of integer math.
  • Закройте окно консоли.
  • Кроме того, можно изменить оператор, чтобы изменить результат. Например, можно изменить оператор + в строке кода int c = a + b; на — для вычитания, * для умножения или / для деления. При запуске приложения результат изменяется соответствующим образом.
  • Добавление кода для создания калькулятора

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

    1. В редакторе кода замените весь код в Program.cs следующим новым кодом:
     using System; namespace Calculator < class Program < static void Main(string[] args) < // Declare variables and then initialize to zero. int num1 = 0; int num2 = 0; // Display title as the C# console calculator app. Console.WriteLine("Console Calculator in C#\r"); Console.WriteLine("------------------------\n"); // Ask the user to type the first number. Console.WriteLine("Type a number, and then press Enter"); num1 = Convert.ToInt32(Console.ReadLine()); // Ask the user to type the second number. Console.WriteLine("Type another number, and then press Enter"); num2 = Convert.ToInt32(Console.ReadLine()); // Ask the user to choose an option. Console.WriteLine("Choose an option from the following list:"); Console.WriteLine("\ta - Add"); Console.WriteLine("\ts - Subtract"); Console.WriteLine("\tm - Multiply"); Console.WriteLine("\td - Divide"); Console.Write("Your option? "); // Use a switch statement to do the math. switch (Console.ReadLine()) < case "a": Console.WriteLine($"Your result: + = " + (num1 + num2)); break; case "s": Console.WriteLine($"Your result: - = " + (num1 - num2)); break; case "m": Console.WriteLine($"Your result: * = " + (num1 * num2)); break; case "d": Console.WriteLine($"Your result: / = " + (num1 / num2)); break; > // Wait for the user to respond before closing. Console.Write("Press any key to close the Calculator console app. "); Console.ReadKey(); > > > 

    Screenshot of a Console window showing the Calculator app with prompts.

  • Нажмите кнопку Калькулятор или клавишу F5, чтобы запустить приложение. Откроется окно консоли.
  • В окне консоли используйте подсказки, чтобы суммировать числа 42 и 119. Теперь приложение должно выглядеть как на следующем снимке экрана:
    1. В редакторе кода замените весь код в Program.cs следующим новым кодом:
     // Declare variables and then initialize to zero. int num1 = 0; int num2 = 0; // Display title as the C# console calculator app. Console.WriteLine("Console Calculator in C#\r"); Console.WriteLine("------------------------\n"); // Ask the user to type the first number. Console.WriteLine("Type a number, and then press Enter"); num1 = Convert.ToInt32(Console.ReadLine()); // Ask the user to type the second number. Console.WriteLine("Type another number, and then press Enter"); num2 = Convert.ToInt32(Console.ReadLine()); // Ask the user to choose an option. Console.WriteLine("Choose an option from the following list:"); Console.WriteLine("\ta - Add"); Console.WriteLine("\ts - Subtract"); Console.WriteLine("\tm - Multiply"); Console.WriteLine("\td - Divide"); Console.Write("Your option? "); // Use a switch statement to do the math. switch (Console.ReadLine()) < case "a": Console.WriteLine($"Your result: + = " + (num1 + num2)); break; case "s": Console.WriteLine($"Your result: - = " + (num1 - num2)); break; case "m": Console.WriteLine($"Your result: * = " + (num1 * num2)); break; case "d": Console.WriteLine($"Your result: / = " + (num1 / num2)); break; > // Wait for the user to respond before closing. Console.Write("Press any key to close the Calculator console app. "); Console.ReadKey(); 

    Screenshot of a Console window showing the Calculator app with prompts.

  • Нажмите кнопку Калькулятор или клавишу F5, чтобы запустить приложение. Откроется окно консоли.
  • В окне консоли используйте подсказки, чтобы суммировать числа 42 и 119. Теперь приложение должно выглядеть как на следующем снимке экрана:
  • Добавление возможностей десятичного числа

    Далее мы будем изменять этот код, добавляя функциональные возможности.

    Пока наше приложение принимает и возвращает только целые числа. Например, при запуске программы и делении числа 42 на число 119 вы получите результат 0, что для нас недостаточно точно.

    Screenshot of a Console window that shows the Calculator app returning an inexact whole number as a result.

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

    1. Из Program.cs в редакторе Visual Studio нажмите клавиши CTRL+H, чтобы открыть элемент управления Find and Replace.
    2. Введите int в элементе управления, а затем введите float в поле Заменить.
    3. Выберите значки Учитывать регистр и Слово целиком в элементе управления или нажмите сочетание клавиш ALT+C и ALT+W.
    4. Щелкните значок Заменить все или нажмите сочетание клавиш ALT+A, чтобы выполнить поиск и замену.
    5. Еще раз запустите приложение калькулятора и разделите число 42 на число 119. Теперь приложение возвращает не просто ноль, а десятичное число. Screenshot of a Console window showing the Calculator app that now returns a decimal numeral as a result.Теперь приложение может возвращать результаты в виде десятичного числа. Давайте изменим код так, чтобы приложение могло выполнять операции над десятичными числами.
    6. Используйте элемент управления Найти и заменить, чтобы изменить каждый экземпляр переменной float на double и каждый экземпляр метода Convert.ToInt32 на Convert.ToDouble .
    7. Запустите приложение калькулятора и разделите число 42,5 на число 119,75. Теперь приложение принимает десятичные значения и возвращает более длинное десятичное число в качестве результата. Screenshot of a Console window showing the Calculator app that now accepts decimal numbers and returns a longer decimal result.В разделе Revise the code (Пересмотр кода) можно уменьшить количество десятичных разрядов в результатах.

    Отладка приложения

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

    Давайте рассмотрим несколько типичных ошибок во входных данных, найдем их с помощью отладчика, если они там есть, и исправим код, чтобы устранить их.

    Дополнительные сведения об отладчике и принципах его работы см. на странице Знакомство с отладчиком Visual Studio.

    Исправление ошибки деления на ноль

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

    Screenshot of the Visual Studio code editor showing a line highlighted in yellow and an Exception Unhandled error for

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

    Давайте изменим код, чтобы он обрабатывал такую ошибку. В Program.cs замените код case «d»: следующим кодом:

     // Ask the user to enter a non-zero divisor until they do so. while (num2 == 0) < Console.WriteLine("Enter a non-zero divisor: "); num2 = Convert.ToInt32(Console.ReadLine()); >Console.WriteLine($"Your result: / = " + (num1 / num2)); break; > 

    Когда вы добавите новый код, раздел с оператором switch будет выглядеть так, как показано на следующем снимке экрана:

    Screenshot showing the revised switch section in the Visual Studio code editor.

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

    Screenshot of a Console window with a repeated prompt to provide a nonzero number.

    Исправление ошибки формата

    Если ввести буквенный символ, когда для приложения необходим цифровой символ, приложение остановит работу. Visual Studio отображает причину проблемы в редакторе кода.

    Screenshot showing an unhandled format error in the Visual Studio code editor.

    Screenshot showing an unhandled format error in the Visual Studio code editor.

    Чтобы решить эту проблему, можно выполнить рефакторинг ранее введенного кода.

    Пересмотр кода

    Чтобы не делегировать всю обработку кода классу program , можно разделить приложение на два класса: Calculator и Program .

    Класс Calculator выполняет основную часть работы для вычислений, а класс Program отвечает за пользовательский интерфейс и обработку ошибок.

      В Program.cs удалите все и добавьте следующий новый Calculator класс:

    class Calculator < public static double DoOperation(double num1, double num2, string op) < double result = double.NaN; // Default value is "not-a-number" if an operation, such as division, could result in an error. // Use a switch statement to do the math. switch (op) < case "a": result = num1 + num2; break; case "s": result = num1 - num2; break; case "m": result = num1 * num2; break; case "d": // Ask the user to enter a non-zero divisor. if (num2 != 0) < result = num1 / num2; >break; // Return text for an incorrect option entry. default: break; > return result; > > 
    class Program < static void Main(string[] args) < bool endApp = false; // Display title as the C# console calculator app. Console.WriteLine("Console Calculator in C#\r"); Console.WriteLine("------------------------\n"); while (!endApp) < // Declare variables and set to empty. string numInput1 = ""; string numInput2 = ""; double result = 0; // Ask the user to type the first number. Console.Write("Type a number, and then press Enter: "); numInput1 = Console.ReadLine(); double cleanNum1 = 0; while (!double.TryParse(numInput1, out cleanNum1)) < Console.Write("This is not valid input. Please enter an integer value: "); numInput1 = Console.ReadLine(); >// Ask the user to type the second number. Console.Write("Type another number, and then press Enter: "); numInput2 = Console.ReadLine(); double cleanNum2 = 0; while (!double.TryParse(numInput2, out cleanNum2)) < Console.Write("This is not valid input. Please enter an integer value: "); numInput2 = Console.ReadLine(); >// Ask the user to choose an operator. Console.WriteLine("Choose an operator from the following list:"); Console.WriteLine("\ta - Add"); Console.WriteLine("\ts - Subtract"); Console.WriteLine("\tm - Multiply"); Console.WriteLine("\td - Divide"); Console.Write("Your option? "); string op = Console.ReadLine(); try < result = Calculator.DoOperation(cleanNum1, cleanNum2, op); if (double.IsNaN(result)) < Console.WriteLine("This operation will result in a mathematical error.\n"); >else Console.WriteLine("Your result: \n", result); > catch (Exception e) < Console.WriteLine("Oh no! An exception occurred trying to do the math.\n - Details: " + e.Message); >Console.WriteLine("------------------------\n"); // Wait for the user to respond before closing. Console.Write("Press 'n' and Enter to close the app, or press any other key and Enter to continue: "); if (Console.ReadLine() == "n") endApp = true; Console.WriteLine("\n"); // Friendly linespacing. > return; > > 

    Screenshot showing a Console window with the refactored Calculator app.

    Screenshot showing a Console window with the refactored Calculator app.

    Закрытие приложения

    Screenshot that shows closing the Output pane in Visual Studio.

    1. Закройте приложение «Калькулятор», если оно еще открыто.
    2. Закройте область вывода в Visual Studio.
    3. В Visual Studio нажмите клавиши CTRL+S, чтобы сохранить приложение.

    Добавление системы управления исходным кодом Git

    Теперь, когда вы создали приложение, вы можете добавить его в репозиторий Git. Visual Studio упрощает этот процесс с помощью инструментов Git, которые вы можете использовать непосредственно из IDE.

    Git — это наиболее широко используемая современная система контроля версий, поэтому, независимо от того, являетесь ли вы профессиональным разработчиком или учитесь программировать, Git может быть для вас весьма полезным. Если вы новичок в Git, вы можете начать с сайта https://git-scm.com/. Там вы найдете памятки, популярную электронную книгу и видеоматериалы по основам GIT.

    Чтобы связать свой код с Git, начните с создания нового репозитория Git, в котором находится ваш код:

    1. В строке состояния в правом нижнем углу Visual Studio нажмите Добавить в систему управления версиями и выберите Git. Screenshot of the Git source control buttons below the Solution Explorer pane, with the Add to Source Control button highlighted.
    2. В диалоговом окне Создать репозиторий Git войдите в GitHub. Screenshot of the Create a Git Repository dialog window where you can sign in to GitHub.Имя репозитория заполняется автоматически в зависимости от расположения вашей папки. Ваш новый репозиторий является частным по умолчанию. Это означает, что только вы можете получить к нему доступ.

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

    Screenshot of the repo status bar that

  • Щелкните Создать и отправить. После того как вы создали свой репозиторий, вы увидите информацию о статусе в строке состояния. Первый значок со стрелками показывает, сколько исходящих и входящих фиксаций в вашей текущей ветке. Вы можете использовать этот значок, чтобы получать любые входящие или исходящие фиксации. Вы также можете выбрать отображение этих фиксаций в первую очередь. Для этого щелкните значок и выберите Просмотреть исходящие/входящие. Второй значок с карандашом показывает количество незафиксированных изменений в вашем коде. Щелкните этот значок, чтобы просмотреть эти изменения в окне Git Changes.
  • Чтобы узнать больше о том, как использовать Git с вашим приложением, см. документацию по управлению версиями Visual Studio.

    Проверка: завершение кодирования

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

    Ниже мы собрали в один блок весь код:

     class Calculator < public static double DoOperation(double num1, double num2, string op) < double result = double.NaN; // Default value is "not-a-number" which we use if an operation, such as division, could result in an error. // Use a switch statement to do the math. switch (op) < case "a": result = num1 + num2; break; case "s": result = num1 - num2; break; case "m": result = num1 * num2; break; case "d": // Ask the user to enter a non-zero divisor. if (num2 != 0) < result = num1 / num2; >break; // Return text for an incorrect option entry. default: break; > return result; > > class Program < static void Main(string[] args) < bool endApp = false; // Display title as the C# console calculator app. Console.WriteLine("Console Calculator in C#\r"); Console.WriteLine("------------------------\n"); while (!endApp) < // Declare variables and set to empty. string numInput1 = ""; string numInput2 = ""; double result = 0; // Ask the user to type the first number. Console.Write("Type a number, and then press Enter: "); numInput1 = Console.ReadLine(); double cleanNum1 = 0; while (!double.TryParse(numInput1, out cleanNum1)) < Console.Write("This is not valid input. Please enter an integer value: "); numInput1 = Console.ReadLine(); >// Ask the user to type the second number. Console.Write("Type another number, and then press Enter: "); numInput2 = Console.ReadLine(); double cleanNum2 = 0; while (!double.TryParse(numInput2, out cleanNum2)) < Console.Write("This is not valid input. Please enter an integer value: "); numInput2 = Console.ReadLine(); >// Ask the user to choose an operator. Console.WriteLine("Choose an operator from the following list:"); Console.WriteLine("\ta - Add"); Console.WriteLine("\ts - Subtract"); Console.WriteLine("\tm - Multiply"); Console.WriteLine("\td - Divide"); Console.Write("Your option? "); string op = Console.ReadLine(); try < result = Calculator.DoOperation(cleanNum1, cleanNum2, op); if (double.IsNaN(result)) < Console.WriteLine("This operation will result in a mathematical error.\n"); >else Console.WriteLine("Your result: \n", result); > catch (Exception e) < Console.WriteLine("Oh no! An exception occurred trying to do the math.\n - Details: " + e.Message); >Console.WriteLine("------------------------\n"); // Wait for the user to respond before closing. Console.Write("Press 'n' and Enter to close the app, or press any other key and Enter to continue: "); if (Console.ReadLine() == "n") endApp = true; Console.WriteLine("\n"); // Friendly linespacing. > return; > > 

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

    Перейдите ко второй части этого руководства:

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *