Как написать консольное приложение на с

Обновлено: 06.07.2024

Логического порядка в примерах нет, будут добавляться по мере написания. Для поиска на странице нужного слова используйте комбинацию клавиш Ctrl+F в своём браузере.

1. Табулирование функций

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

2. Второй класс в проекте, генерирующий случайное число

Для добавления нового класса достаточно обратиться к меню Проект -> Добавить класс и назначить новому классу имя.

Если классы располагаются в одном пространстве имён, для ссылки на метод объекта второго класса главной программе достаточно выполнить что-то вроде

3. Два класса в одном файле

Достаточно, чтобы каждый класс располагался в своих операторных скобках внутри общего namespace

4. Матрицы обычная и ступенчатая

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

5. Шаблон класса стека

Показаны стек целых и стек вещественных чисел, использующие один и тот же шаблон класса.

6. Шаблон функции и аргументы по ссылке

Передача и возврат аргументов по ссылке, функция с переменным числом аргументов.

7. Фабрика объектов

Так называют статический метод в классе, возвращающий новый объект этого же класса. Имеет смысл, если по каким-то причинам не хотим делать конструктор класса публичным методом.

8. Статические члены класса и оценивание арифметических выражений

Описываем в классе статический счётчик созданных объектов и оцениваем арифметические выражения одной строчкой кода с проверкой корректности (метод Exec ).

9. Работаем с объектом "Таблица данных"

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

10. Запускаем десять потоков и выводим их состояние
11. Перегрузка операторов
12. Три способа преобразовать строку в число

Основные способы и простейшая обработка исключений при преобразовании.

13. Шесть способов преобразовать число в строку

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

14. Индексаторы, свойства и автоматически реализуемые свойства

Ограничения индексаторов таковы: значение, отдаваемое индексатором, нельзя передавать методу в качестве параметра ref или out , поскольку в индексаторе не определено место в памяти для его хранения. Индексатор должен быть членом своего класса и поэтому не может быть объявлен как static .

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

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

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

15. Наследование

Абстрактный, базовый и производный классы, приватные данные и публичные свойства-"обёртки" над ними, абстрактные и виртуальные методы, приватные, публичные и защищённые члены класса, неуниверсальный статический класс с расширениями, класс, запрещённый к наследованию, массив из объектов базового класса.

Далее показан вывод этого приложения:

16. Упаковка и распаковка

Когда ссылка на объект класса object используется для обращения к типу значения, такой процесс называется упаковкой. Упаковка приводит к тому, что значение простого типа сохраняется в экземпляре объекта, т.е. "упаковывается" в объекте, который затем используется как и любой другой объект. Но в любом случае упаковка происходит автоматически. Для этого достаточно присвоить значение переменной ссылочного типа object, а об остальном позаботится компилятор.

Распаковка представляет собой процесс извлечения упакованного значения из объекта. Это делается с помощью явного приведения типа ссылки на объект класса object к соответствующему типу значения. Попытка распаковать объект в другой тип может привести к ошибке времени выполнения.

В примере значение типа int передаётся в качестве аргумента методу Sqr(), который, в свою очередь, принимает параметр типа object.

Также показана работа с массивом из разнотипных элементов, точнее, из элементов базового класса object.

Обычной отправной точкой для программиста на C++ является приложение "Hello World", выполняемое в командной строке. Именно его вы и создадите в Visual Studio на этом шаге.

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

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

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

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

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

Диалоговое окно создания проекта.

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

Снимок экрана: диалоговое окно "Настройка нового проекта" с текстом HelloWorld, введенным в текстовое поле "Имя проекта".

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

Снимок экрана: проект Hello World в IDE.

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

В Visual Studio в меню Файл выберите пункты Создать > Проект, чтобы открыть диалоговое окно Новый проект.

Снимок экрана: диалоговое окно "Новый проект" с открытым разделом "Установленные" > "Visual C++" с выделенным пунктом "Пустой проект" и Hello World в текстовом поле "Имя".

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

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

Visual Studio позволяет создавать приложения и компоненты самых разных типов как для Windows, так и для других платформ. Шаблон Пустой проект не определяет тип создаваемого приложения. Консольное приложение — это приложение, которое выполняется в консоли или в окне командной строки. Чтобы создать его, необходимо сообщить Visual Studio, что приложение будет использовать подсистему консоли.

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

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

В обозревателе решений выберите проект HelloWorld. В меню Проект выберите команду Добавить новый элемент, чтобы открыть диалоговое окно Добавление нового элемента.

Visual Studio создаст пустой файл исходного кода и откроет его в окне редактора, где в него можно ввести код.

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

Скопируйте код в окне редактора с файлом HelloWorld.cpp.

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

Снимок экрана с кодом Hello World в редакторе.

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

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

Руководство по устранению неполадок

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

Создание проекта приложения: проблемы

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

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

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

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

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

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

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

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

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

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

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

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

Работая с этим сайтом, Вы даете согласие на использование файлов Cookie.

image articles/478/478_1.jpg

image articles/478/478_2.jpg


Visual Studio создает проект и открывает в правой части окна Обозреватель решений, а в левой части – окно программного кода.

image articles/478/478_3.jpg


Если по каким-то причинам обозреватель решений не открылся, его можно открыть выбрав меню Проект ⇒ Обозреватель решений.

image articles/478/478_4.jpg

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MyFirstProgram
class Program
static void Main( string [] args)
>
>
>
Первые пять строк представляют собой директивы using и на текущий момент не задействуются. В строке

ключевое слово namespace , обозначающее пространство имён, используется для объявления области, которая содержит набор связанных объектов.

Внутри указанного пространства имен расположен основной класс программы


Это заголовок определения класса. По умолчанию создается класс с именем Program , но это имя без труда может быть изменено пользователем.
Далее в фигурных скобках размещается тело класса, содержащее поля и методы. В данном случае тело класса состоит из одного метода с заголовком

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

Откомпилируем проект, выбрав меню Сборка ⇒ Пересобрать решение.

image articles/478/478_7.jpg

image articles/478/478_8.jpg


Для запуска на выполнение выбираем меню Отладка ⇒ Начать отладку или нажимаем кнопку Пуск или клавишу F5.

image articles/478/478_9.jpg

Для того чтобы задержать окно консоли до нажатия кнопки, добавим в тело основного метода еще одну строчку кода:

image articles/478/478_10.jpg

Переходите к решению консольных задач в разделах Семантика и Алгоритмика

Автор: Вставская Елена Владимировна

Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

Ты в любой момент сможешь отписаться от рассылки.

Основатель проекта


+ Бесплатно, каждую субботу
+ Создание программ с нуля
+ Решение консольных задач

Видео-уроки


+ 300 практических видеоуроков
+ 400 интерактивных задач
+ Видео-решения и разбор

Миссия

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


Для создания нового консольного приложения запускаем Microsoft Visual Studio 2010 Express и переходим в меню Файл->Создать->Проект

В появившемся окне выбираем Консольное приложение Win32 и задаем имя проекта и нажимаем кнопку OK.

В появившемся окне нажимаем кнопку Далее.

В следующем окне отмечаем галочку Дополнительные параметры: Пустой проект и нажимаем кнопку Далее.

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

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


В появившемся окне выбираем Файл C++ (.cpp), задаем имя файла и нажимаем кнопку Добавить.

Пример программы


Для компиляции программы выбираем меню Отладка->Построить решение.

Построение решения


В случае успешного построения в нижней части окна отображается Построение: успешно 1.

Построение успешно


Для запуска приложения выбираем меню Отладка->Начать отладку.


Результат выполнения программы:

Свойства проекта

Для корректного отображения русских символов в левом верхнем углу консоли по нажатию правой кнопки мыши выбираем меню Свойства.

В появившемся окне выбрать шрифт, поддерживающий русскую кодировку для кодовой страницы 1251, например Lucida Console.


В результате получаем читаемый русский шрифт.

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

Запускаем visual studio. Создаем новый проект:



вводим имя приложения FirstApp, остальное в этот раз можно не трогать, жмем Ok.

Откроется код приложения. Так как у нас приложение пока самое простое, оно состоит из одного файла:


Разбор кода

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

Добавляем вывод в консоль

Запустим программу, нажав кнопку пуск


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

Открывается и закрывается окно потому, что наше приложение пока еще ничего не умеет.

Давайте выведем чего-нибудь в консоль. Для этого воспользуемся классом Console, которые находится в пакете System (именно для этого и нужна строчка using System), и так:

запускаем приложение, либо кликая на кнопку Пуск либо нажав F5.

Снова что-то проскакивает, но уже с нашим текстом, но все равно быстро закрывается.

Надо как-нибудь остановить процесс мгновенного закрытия программы. Для этого заставим программу ждать нажатия любой клавиши от пользователя, правим приложение:

Отлично! Теперь программа напечатал текст, и остановилась – ждет пока пользователь чего-нибудь нажмет.


Жмем любую клавишу, и программа тут же закрывается.

Исполняемый файл приложения

Итогом компиляции приложения является *.exe файл, именно этот файл запускается, когда нажимаешь кнопку пуск. Точнее, сначала этот файл создается, а потом уже запускается. Сам файл лежит по пути, который был указан при создании проекта.

В моем случае я указал имя приложения FirstApp, а путь к проекту C:\Users\m\source\repos . Таким образом exe файл находится в папке c:\Users\m\source\repos\FirstApp\FirstApp\bin\Debug\


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

Читайте также: