- •Часть 1. Основы создания программ в Си Лекция.1.Язык Си
- •Технология разработки программ
- •Базовые элементы языка Си
- •Представление данных в Си
- •Встроенные типы данных
- •Переменные
- •Операции и выражения
- •Функции
- •Лекция.2.Язык Си Обзор элементов языка Си Типизированные константы
- •Область действия переменных
- •Управляющие конструкции с
- •Массивы и указатели
- •Типы, определяемые пользователем
- •Лекция.3.Препроцессор и отладка программ
- •Макроопределения
- •Условная компиляция
- •1. Предотвращение включения файлов
- •Отладка программ
- •Элементы отладки
- •Лекция.1.Объектно-ориентированное программирование
- •Что такое объектно-ориентированное программирование
- •Пример определений классов
- •Конструктор и деструктор
- •Элементы класса
- •Элементы-функции
- •Элементы данных
- •Класс как область действия
- •Указатель this
- •Лекция.3.Элементы класса Статические элементы класса
- •Статические элементы-функции
- •Специальные элементы-функции класса
- •Конструктор
- •Список инициализации элементов
- •Конструктор копии
- •Операция присваивания
- •Деструктор
- •Операции класса new и delete
- •Функции преобразования
- •Ключевое слово explicit
- •Операции приведения
- •Доступ к базовым классам
- •Простое наследование
- •Конструкторы, деструкторы и наследование
- •Сложное наследование
- •Неоднозначности при сложном наследовании
- •Виртуальные базовые классы
- •Виртуальные функции
- •Чисто виртуальные функции и абстрактные классы
- •Реализация виртуального механизма
- •Лекция.5.Семинар 1-2: Обработка исключений
- •Объекты-исключения
- •Повторное возбуждение исключения
- •Перехват всех исключений
Основы
создания программ на Си и С++ стр.
Часть 1. Основы создания программ в Си Лекция.1.Язык Си
Язык программирования Си создан в 1972 г. сотрудником фирмы Bell Laboratories Деннисом Ритчи (Dennis M. Ritchie) при разработке операционной системы UNIX. Язык проектировался как инструмент для системного программирования с ориентацией на разработку хорошо структурированных программ. Удачное сочетание лаконичности конструкций и богатства выразительных возможностей позволило языку Си быстро распространиться и стать наиболее популярным языком прикладного и системного программирования. Компиляторы языка Си работают почти на всех типах современных ЭВМ в операционных системах UNIX, MS-DOS, Mac OS, OS/2, Windows, Windows NT, Solaris и др.
С++ фактически по ряду аспектов является улучшенным Си. С++ предоставляет ряд совершенно новых возможностей, таких как объектно-ориентированное программирование, шаблоны, расширенная работа с пользовательскими типами и прочие.
Технология разработки программ
Разработка программ на языке C++ ведется с помощью специальных комплексов программ, которые называются системами программирования и позволяют создавать программы на определенной реализации языка. Системы программирования даже одного производителя имеют различные версии, которые отражают развитие технологии программирования и эволюцию среды выполнения программ. Это стимулирует стремление максимально использовать стандартные средства языка для того, чтобы снизить затраты на модификацию программ при изменении среды выполнения или при переходе на другую версию языка.
Процесс создания программ включает четыре этапа:
1. Написание и редактирование исходного текста программы с сохранением ее в виде исходного файла или модуля.
2. Компиляция программы и получение ее на определенном промежуточном языке с сохранением виде объектного файла или модуля.
3. Построение исполнимого файла или модуля путем объединения (компоновки) полученного объектного модуля программы с другими объектными модулями стандартных и специальных библиотек.
4. Отладка программы, которую можно проводить с помощью специального средства (отладчика), облегчающего обнаружение ошибок.
Соответственно, основными компонентами современных систем программирования являются:
• интегрированная среда программирования;
• редактор связей (компоновщик или линковщик);
• библиотеки заголовочных файлов;
• стандартные и специальные библиотеки;
• библиотеки примеров программ;
• программы-утилиты;
• файлы документации.
Интегрированная среда программирования представляет собой программу, имеющую встроенный редактор текстов, подсистему работы с файлами, систему справочной помощи (Help-систему), встроенный отладчик, подсистему управления компиляцией и редактирования связей. Схема получения исполнимого модуля программы в интегрированной среде показана на рисунке (Рис. 1)
Рис. 1 Схема получения исполняемого модуля
Исходный модуль (ИМ) программы подготавливается с помощью встроенного или внешнего текстового редактора и размещается в файле с расширением *.срр. После этого ИМ обрабатывается препроцессором и, в случае необходимости, к исходному тексту программы присоединяются подключаемые файлы (ПФ). В дальнейшем модернизированный исходный модуль (ИМ*) обрабатывается компилятором. Выявленные синтаксические ошибки устраняются, и безошибочно откомпилированный объектный модуль (ОМ) помещается в файл с расширением obj. Затем ОМ обрабатывается компоновщиком, который дополняет программу нужными библиотечными функциями из библиотечных файлов (БФ). Полученный модуль называется исполнимым модулем (ИсМ) и помещается в файл с расширением ехе, который в дальнейшем исполняется.