- •«Национальный исследовательский
- •Т.Е. Мамонова Лабораторная работа № 11
- •220700 – «Автоматизация технологических процессов и производств».
- •Лабораторная работа № 11
- •Теоретическая часть Директивы препроцессора
- •Порядок выполнения работы
- •Варианты заданий к лабораторной работе № 11
- •Содержание отчета
- •Список литературы
- •Приложение а Системы счисления, применяемые в эвм
- •220700 – «Автоматизация технологических процессов и производств». Отпечатано в Издательстве тпу в полном соответствии с качеством предоставляемого оригинал-макета
- •634034, Г. Томск, пр. Ленина, 30
МИНИСТЕРСТВО ПО НАУКЕ И ОБРАЗОВАНИю РФ
Государственное образовательное учреждение высшего профессионального образования
«Национальный исследовательский
ТОМСКИЙ ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»
УТВЕРЖДАЮ
Директор ИК
_____________ М.К. Сонькин
«____»_____________2011 г.
Т.Е. Мамонова Лабораторная работа № 11
Модульное программирование в C++
Методические указания по выполнению лабораторных работ
по курсу «Информатика»
для студентов направлений 220000 – «Мехатроника и робототехника»,
220700 – «Автоматизация технологических процессов и производств».
Издательство
Томского политехнического университета
2011
УДК 519.6
ББК 00000
А00
Мамонова Т.Е.
А00 Модульное программирование в C++. Методические указания по выполнению лабораторных работ по курсу «Информатика» для студентов I курса, обучающихся по направлениям 220000 – «Мехатроника и робототехника», 220700 – «Автоматизация технологических процессов и производств» / Т.Е. Мамонова. – Томск: Изд-во Томского политехнического университета, 2011. – 13 с.
УДК 519.6
ББК 00000
Методические указания рассмотрены и рекомендованы к изданию методическим семинаром кафедры интегрированных
компьютерных систем управления ИК
«1» сентября 2011 г.
Зав. кафедрой ИКСУ
доктор технических наук ______________ А.М. Малышенко
Председатель учебно-методической
комиссии ______________ В.Н. Шкляр
Рецензент
Доцент ИКСУ ИК НИ ТПУ кандидат технических наук
В.Н. Шкляр
© ГОУ ВПО «Томский политехнический
университет», 2011
© Мамонова Т.Е., 2011
© Оформление. Издательство Томского
политехнического университета, 2011
Лабораторная работа № 11
Модульное программирование в C++
Цель работы. Научиться использовать модули при прогаммировании на языке С++.
Теоретическая часть Директивы препроцессора
С увеличением объема программы становится неудобно хранить ее в одном файле. Разбиение программы на функции является первым шагом в повышении уровня абстракции программы, следующий – группировка функций и связанных с ними данных в отдельные файлы (модули), компилируемые раздельно.
Получившиеся в результате компиляции объектные модули объединяются в исполняемую программу с помощью компоновщика. Разбиение на модули уменьшает время перекомпиляции и облегчает процесс отладки. Чем более независимы модули, тем легче отлаживать программу.
Модуль содержит данные и функции их обработки. Для того чтобы использовать модуль, нужно знать только его интерфейс.
Интерфейсом модуля являются заголовки всех функций и описания доступных извне типов, переменных и констант. Описания глобальных программных объектов во всех модулях программы должны быть согласованы.
Модульность в языке С++ поддерживается с помощью директив препроцессора, пространств имен, классов памяти, исключений и раздельной компиляции.
Препроцессором называется первая фаза компилятора. Инструкции препроцессора называются директивами. Они должны начинаться с символа #, перед которым в строке могут находиться только пробельные символы. [3]
Таким образом, для того чтобы объявления функций не загромождали основной алгоритм, их помещают в файл с расширением h или, говоря иначе, в модуль.
Компилятор, выполняя директиву препроцессора #include, вставляет текст указанного файла в программу (в файл с расширением cpp), начиная с точки, в которой эта директива находится.
Синтаксис директивы #include:
#include < имя_файла >
#include “имя_файла“
В первом случае компилятор начинает поиск указанного файла в стандартных папках, а во втором случае – с папки, в которой находится файл с директивой #include.
Допускается в кавычках указать полное имя файла, то есть “путь к файлу \ имя файла”.
-
Пример 1. Создать программу для выполнения следующей задачи: если квадрат числа кратен двум, то вывести на экран его куб, если нет – вывести на экран ноль.
Дополнительные требования к программе:
-
программа должна содержать меню для выбора нужного действия;
-
программа должна состоять из двух модулей:
-
в главном модуле (файл с расширением cpp) должны находиться меню и обращения к функциям, которые выполняют действия над списками;
-
объявления функций должны находиться в заголовочном файле (файл с расширением h).