Лекция основы Си++ 9




НазваниеЛекция основы Си++ 9
страница37/37
Дата публикации11.06.2014
Размер1.85 Mb.
ТипЛекция
literature-edu.ru > Курсовая работа > Лекция
1   ...   29   30   31   32   33   34   35   36   37

7. Сводка результатов


Составной тип данных позволяет объединить под одним именем несколько переменных уже существующих типов. В Си++ для описания составного типа применяется служебное слово "struct". Структуры могут быть вложенными. Для обращения к компонентам структуры используются операции точка "." или "->" (если обращение выполняется через указатель на структуру).

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

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

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

8. Упражнения

Упражнение 1


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

Упражнение 2


Разработайте статический стек для хранения целых чисел и для хранения символьных строк длиной до 100 символов. Для каждого из стеков сделайте отдельные заголовочные файлы ("stack_int.h" и "stack_string.h") и файлы реализации ("stack_int.cpp" и "stack_string.cpp"). Проверьте работу стеков с помощью соответствующей тестовой программы.

Упражнение 3


Согласно описанию из п. 6.3 реализуйте стек с использованием динамической памяти (примените операторы "new" и "delete").

Упражнение 4


Напишите функции для записи содержимого массива структур "Person" (см. п.2) в файл, для чтения структур "Person" из файла и для печати этих структур на экране. Для ввода/вывода из файла и для вывода на экран примените перегруженные операторы ">>" и "<<".

ПРИЛОЖЕНИЕ. Краткое руководство по среде разработки Developer Studio Visual C++



Microsoft Developer Studio – это интегрированная среда разработки программ, объединяющая текстовый редактор, компилятор, компоновщик и отладчик. Эта среда позволяет разрабатывать программы на нескольких языках программирования, в том числе на Си++ и Java.

В этом приложении подробно описаны действия, необходимые для написания простой программы на Си++, ее компиляции и запуска с помощью Developer Studio Visual C++ на ПК под управлением операционной системы Windows 95/NT.

Visual C++ выполняет компиляцию и запуск программ в соответствии с проектом. Проект – это структура данных, содержащая всю информацию, необходимую для компиляции исходных файлов программы и ее компоновки со стандартными библиотеками (например, библиотекой ввода/вывода).

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

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

1. Создание нового проекта


Проект состоит из набора файлов с исходным текстом программы (исходных файлов) и набора параметров, определяющих компиляцию и компоновку этих файлов в исполняемый файл приложения. У проекта должно быть уникальное имя. Параметры проекта хранятся в файлах с расширениями ".DSW" и ".DSP" в папке проекта.

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

Сначала с помощью главного меню Windows запустите Visual C++. Затем проделайте перечисленные ниже действия.

  1. Выберите команду верхнего меню FileNew (рис. 1).





    Рис. 1. Выбор команды FileNew (ФайлНовый).

    Рис. 2. Закладка Projects (Проекты) в окне создания нового файла.

  2. Перейдите на закладку Projects (рис. 2).

  3. Выберите проект типа Win32 Console application (консольное приложение для платформы Win32, т.е. Windows 95/98 и NT/2000).

  4. В строке Location (Местоположение) укажите папку диска C:\, имя которой совпадает с вашей фамилией (например, "C:\Ivanov"). В строке Project Name (Имя проекта) введите "hello_world". По умолчанию Developer Studio сделает новую папку проекта C:\Ivanov\hello_world. В ней будут сохраняться все файлы, относящиеся к данному проекту.

  5. По умолчанию в качестве целевой платформы проекта указывается Win32. Не изменяйте этот параметр.

  6. Нажмите OK для создания проекта с заданными параметрами.



2. Добавление в проект нового исходного файла


Чтобы включить в проект исходный текст программы, надо создать новый текстовый файл с текстом программы на Си++ и добавить его в проект. Для этого выполните следующие действия:

  1. Выберите команду меню FileNew.

  2. В окне создания нового файла перейдите на закладку Files (рис. 3).

  3. В списке выберите тип нового файла: C++ Source code (исходный файл Си++).

  4. По умолчанию новый файл будет добавлен в текущий проект hello_world (т.к. установлен флажок Add to project).

  5. В строке File name наберите имя нового файла – hello (расширение ".CPP" будет добавлено автоматически).

  6. Нажмите OK.




Рис. 3. Закладка Files (Файлы) в окне создания нового файла.
Developer Studio создаст новый файл hello.cpp в папке C:\Ivanov\hello_world и добавит его в проект hello_world. Новый файл автоматически будет открыт в окне текстового редактора (рис. 4). Наберите в нем текст программы, печатающей на экране короткое сообщение:
#include

int main()

{

  cout << "Hello world!\n";

  return 0;

}
Чтобы сохранить набранный текст на диске, выберите команду меню FileSave (ФайлСохранить).


Рис. 4. Окно текстового редактора с открытым файлом hello.cpp расположено в правой части окна Developer Studio.


3. Сборка проекта


Результатом сборки проекта является исполняемый файл программы, который может работать независимо от Developer Studio.

Для сборки проекта выберите команду меню BuildBuild hello_world.exe (рис. 5). В нашем примере проект содержит только один исходный файл (hello.cpp). В процессе сборки он будет скомпилирован и скомпонован со стандартной библиотекой ввода/вывода.


Рис. 5. Выбор команды BuildBuild hello_world.exe (СборкаСборка приложения hello_world.exe).
Информация о выполнении сборки отображается в окне Output window (рис. 6). В нем выводятся сообщения, выдаваемые программами, работающими при сборке проекта: препроцессором, компилятором и компоновщиком. Среди этих сообщений могут встретиться сообщения об ошибках (errors) и предупреждения о возможных ошибках (warnings). Если таких сообщений не возникло, значит, сборка успешно завершена (рис. 6).


Рис. 6. Окно Output window (Окно вывода) расположено в нижней части окна Developer Studio.
Если есть ошибки, их надо устранить (в нашем случае просто внимательно сверьте исходный текст с образцом) и снова попытаться собрать проект.

4. Запуск нового приложения


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

Для запуска приложения выберите команду меню BuildExecute hello_world.exe (рис. 7). Для удобства Developer Studio помещает имя исполняемого файла в название команды меню.


Рис. 7. Выбор команды BuildExecute hello_world.exe (СборкаЗапуск приложения hello_world.exe).
После выбора команды запуска Developer Studio создаст консольное окно – окно, напоминающее экран компьютера, работающего под управлением MS-DOS, а не Windows. Консольное приложение осуществляет ввод/вывод данных в пределах этого окна (рис. 8).


Рис. 8. Окно консольного приложения hello_world.exe.
Более подробные сведения об использовании среды разработки содержатся в справочной системе Developer Studio. В Приложении 2 описаны некоторые способы отладки программ и служебные клавиши отладчика Developer Studio.

Литература


  1. Miller R., Clark D, White B., Knottenbelt W. An Introduction to the Imperative Part of C++. Imperial College of Science, Technology and Medicine, London. 1996-1999. (Вводное описание программирования на Си++, послужившее основой данной части учебного курса.)

  2. Savitch W., Problem Solving with C++: The Object of Programming, 2nd Edition, Addison Wesley Publishing Company, Inc., 1999. (Учебник начального уровня по программированию, языку Си++ и объектно-ориентированному программированию.)

  3. Вирт Н. Алгоритмы+структуры данных=программы. М.:Мир, 1985. (В этой монографии подробно рассматриваются алгоритмы сортировки, рекурсивные алгоритмы и динамические типы данных. Изложение базируется на языке Паскаль, но излагаемый материал во многом применим и к процедурному программированию на Си++.)

  4. Страуструп Б. Язык программирования С++. Вторая редакция. К.:"ДиаСофт", 1993. ("Классическое" справочное руководство по языку Си++, написанное автором языка. Эта книга пригодится тем, кто собирается в будущем серьезно заниматься программировать на Си++.)

  5. Уэйт М., Прата С., Мартин Д. Язык Си. Руководство для начинающих. М.:Мир, 1988. (Учебник начального уровня по языку Си без объектно-ориентированных возможностей. В отличие от данных лекций, в этой книге используются библиотечные функции ввода-вывода языка Си, а не потоковые объекты Си++.)



Учебно-методическое издание


А.А. Богуславский, С.М. Соколов

Основы программирования на языке Си++

В 4-х частях.

(для студентов физико-математических факультетов

педагогических институтов)

Компьютерная верстка Богуславский А.А.

Технический редактор Пономарева В.В.

Сдано в набор 12.04.2002 Подписано в печать 16.04.2002

Формат 60х84х1/16 Бумага офсетная

Печ. л. 20,5 Учетно-изд.л. ____ Тираж 100

Лицензия ИД №06076 от 19.10.2001



140410 г.Коломна, Моск.обл., ул.Зеленая, 30. Коломенский государственный педагогический институт.










1   ...   29   30   31   32   33   34   35   36   37

Похожие:

Лекция основы Си++ 9 iconЛекция основы си++ 7
Б73 Основы программирования на языке Си++: Для студентов физико-математических факультетов педагогических институтов. Коломна: кгпи,...

Лекция основы Си++ 9 iconЛекция I и проблема языка и сознания лекция II 31 слово и его семантическое...
Монография представляет собой изложение курса лекций, про* читанных автором на факультете психологии Московского государственного...

Лекция основы Си++ 9 iconЛекция психосексуальное развитие. Возрастная динамика взаимоотношения полов 15
Основы семейной психопедагогики (курс лекций) / В. И. Короткий. — Архангельск: М'арт, 2003. — 178 с

Лекция основы Си++ 9 iconЛекция Архитектура 32-разрядных ос windows 7
Б73 Основы программирования на языке Си++: Для студентов физико-математических факультетов педагогических институтов. – Коломна:...

Лекция основы Си++ 9 iconЛекция Основные понятия ооп 7
Б73 Основы программирования на языке Си++: Для студентов физико-математических факультетов педагогических институтов. – Коломна:...

Лекция основы Си++ 9 iconЛекция №1. Введение. Элементы дифференциальной геометрии. 2
Лекция №5. Множества Жюлиа, множество Мандельброта и их компьютерное представление. 18

Лекция основы Си++ 9 iconЛекция на тему: «Современные подходы к содержанию дополнительного образования детей»
...

Лекция основы Си++ 9 iconЛекция в Дорнахе 22 мая 1920 года
Канта и протестантизма. Эта лекция вызвала негодование среди членов Лиги, культивировавших и признававших под названием монизма вообще...

Лекция основы Си++ 9 iconКурс лекций Лекция Введение в философскую суицидологию. Лекция Общая...
Открыть, в чём состоит суть суицида, наука не в состоянии (по собственной ограниченной природе) и потому должна обращаться за объяснениями...

Лекция основы Си++ 9 iconЛекция для слушателей курса «Основы религий»
Я не могу всего этого понять, потому что некоторые пытливые учителя, помню, меня просто одолевали вопросами, где найти, например,...

Литература


При копировании материала укажите ссылку © 2015
контакты
literature-edu.ru
Поиск на сайте

Главная страница  Литература  Доклады  Рефераты  Курсовая работа  Лекции