Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МетУк - МЯС - 1 - Создание консольных приложени...doc
Скачиваний:
3
Добавлен:
09.11.2019
Размер:
80.38 Кб
Скачать

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ «ДОНСКОЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»

Кафедра "Программное обеспечение вычислительной техники и автоматизированных систем"

Создание консольных приложений и работа с исключениями

Методические указания к лабораторной работе №1

по дисциплине «Межплатформенные языковые среды»

Ростов-на-Дону, 2010 г.

Составители: к.т.н., доц. В.В. Долгов, ст. преп. А.А. Деревянкина

УДК 512.3

Создание консольных приложений и работа с исключениями: метод. указания. ­– Ростов н/Д: Издательский центр ДГТУ, 2010. – 8 с.

В методическом указании рассматриваются вопросы создания консольных приложений на языке C#, консольный ввод/вывод и отладка простейших алгоритмов. Также даны понятие, назначение и общие вопросы использования исключений как способа обработки ошибочных ситуаций, возникающих при работе программ. Даны задания к лабораторным работам, помогающим закрепить на практике полученные знания. Методические указания предназначены для студентов специальностей 230105 "Программное обеспечение вычислительной техники и автоматизированных систем", 010503 "Математическое обеспечение и администрирование информационных систем".

Ответственный редактор: д.т.н., проф. Р.А. Нейдорф

 В.В. Долгов,

А.А. Деревянкина, 2010

 Издательский центр ДГТУ, 2010

Создание консольных приложений

Для создания консольного приложения в среде Visual Studio 2008 необходимо указать специальный тип проекта – «Console Application». В этом случае при запуске проекта система будет создавать текстовое консольное окно вместо графического окна. Для ввода/вывода в таком окне используются функции, описанные в специальном классе Console пространства имен System. Основные методы и свойства этого класса приведены в табл. 1. Стоит обратить особое внимание, что в среде отсутствуют средства непосредственного ввода чисел, а весь ввод рассматривается как строковая информация. Для преобразования строковых данных в тип, необходимый программе обычно используют либо методы семейства Parse (описанные у многих типов данных), либо возможностями специального класса Convert.

Таблица 1. Основные элементы класса System.Console

Основные методы класса Console

Метод/Свойство

Описание

void Clear()

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

int Read()

Считывает один символ из очереди ввода и возвращает его в виде числа (кода в таблице символом текущей кодировки). Если обнаружен конец текстового потока данных, возвращает -1. При работе с консолью блокирует работу программы до появления готовых к вводу символов после нажатия клавиши Enter. Для преобразования к символьному виду возвращаемого значения необходимо воспользоваться возможностями класса Convert.

string ReadLine()

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

void WriteLine(object o);

Выводит строку на консоль, преобразуя объект к строковому представлению.

void WriteLine(string format, Object[] args)

Выводит строку на консоль, формируя её на основе форматной строки и массива объектов.

Работа с исключениями

Исключение представляет собой ошибку или непредвиденную ситуацию, происходящую в процессе выполнения программы. На сегодняшний день исключения являются основным способом обработки ошибок, возникающих в программах, и в языке C# их обработка основывается на четырех ключевых словах: try, catch, throw и finally.

try

{

блок команд, в котором может возникнуть ошибка

}

[catch [(тип_исключения имя_исключения)]

{

блок обработки исключения

}]

[finally

{

команды, которые выполняются в любом случае

}]

Такая конструкция выполняет команды, расположенные в блоке try, и, если внутри происходит исключение, передает управление на блок catch, которому возникшее исключение передается в качестве параметра. В любом случае (произошло исключение или нет) после выполнения блока try вызывается блок команд finally, в котором расположены команды освобождения ресурсов.

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

Таблица 2. Основные стандартные исключения среды .NET

Класс исключения

Описание исключительной ситуации

ArgumentException

Значение параметра, переданное в функцию неверно.

ArgumentNullException

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

InvalidCastException

Некорректное преобразование типов данных.

StackOverflowException

Переполнение стека. Возникает, как правило, при неверной рекурсии.

OverflowException

Арифметическое переполнение.

DivideByZeroException

В ходе вычислений возникло деление на ноль

IndexOutOfRangeException

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

ArrayTypeMismatchException

Тип сохраняемого в массив значения несовместим с типом элементов массива.

OutOfMemoryException

Недостаточно памяти. Обычно возникает в процессе создания нового объекта оператором new.