Лекция_1. Общая характеристика языка С++
1. Назначение и некоторые особенности языка
2. Алфавит и словарь
3. Базовые типы данных, используемые в C++
4. Структура программы
5. Операторы языка C++
6. Операторы ввода и вывода данных
1. Назначение и некоторые особенности языка
Язык программирования высокого уровня C++ был разработан в начале 80-х годов Бьерном Страуструпом в результате расширения и дополнения языка С. В этом языке сочетаются лучшие свойства языка Ассемблер и языков программирования высокого уровня. Компактность и скорость выполнения программ на языке C++ приближают их к программам, написанным на языке Ассемблер. C++ содержит в себе все основные черты объектно-ориентированных языков программирования: наличие объектов и инкапсуляцию данных, наследование, полиморфизм и абстракцию типов. Наряду с этим C++ полностью поддерживает технологию структурного программирования.
В настоящее время фирмой Borland International создано несколько компиляторов C++. Однако при изучении особенностей языка необязательно иметь самую последнюю версию компилятора, которая может понадобиться только при написании больших и сложных программ. Изложение материала будет ориентировано на версию компилятора C++ 3.1, появившуюся на рынке программных продуктов в начале 90-х годов почти одновременно с Турбо Паскалем 7.0. Интегрированная инструментальная оболочка C++ 3.1 очень похожа на ИИО ТП 7.0, поэтому нет смысла еще раз описывать структуру ИИО, рассматривать вопросы ввода, корректирования, сохранения, выполнения и методики отладки пользовательских программ (см. подразд. 3.1).
К основным особенностям языка программирования C++ следует отнести возможность разделения программы на легко поддающиеся контролю части за счет определения новых пользовательских типов, наличие классов, которые обеспечивают скрытие данных, их инициализацию, управление памятью и механизмы перегрузки операций и функций [15].
Программа на C++ состоит из одной или нескольких функций, которые содержат переменные, константы и операторы, предназначенные для решения определенной задачи. В язык C++ включены оригинальные операторы присваивания и выбирающие операторы. Реализация циклов «До» и «С параметром» несколько отличается от привычных для нас алгоритмических структур: выход из этих циклов осуществляется по условию «Нет». Как и в Турбо Паскале 7.0, операторы в C++ отделяются друг от друга точкой с запятой.
Знакомство с языком C++ начнем с рассмотрения алфавита и словаря, типов данных и структуры программы на языке C++.
2. Алфавит и словарь
Язык C++ оперирует со следующим набором символов:
• латинские прописные и строчные буквы (А, В, С, ..., х, у, z);
• арабские цифры (0, 1, 2, ..., 7, 8, 9);
• символ подчеркивания;
• специальные символы и символы-разделители. Специальные символы и их комбинации чаще всего используются для обозначения операций. Список специальных символов приведен в таблице
Символами-разделителями считаются пробелы, комментарии и концы строк. Комментарии могут содержать любые символы, следующие за знаком двойного слеша, например: //Главная программа. Компилятор C++ игнорирует текст, следующий за этим знаком до конца строки. Кроме того, комментарии могут быть заключены в ограничивающие скобки /* */, например: /*Главная программа*/.
С помощью перечисленных символов формируются:
• имена;
• ключевые (служебные) слова;
• числа;
• строки символов;
• метки.
Имена (идентификаторы) в C++ различаются по первым 32 символам. Имена обязательно начинаются с латинской буквы или символа подчеркивания «_», за которыми могут следовать в любой комбинации латинские буквы и цифры. C++ различает прописные и строчные буквы. Не допускается использование для написания имен специальных символов и символов-разделителей.
Например: _х, В12, Stack — правильно; Label. 4, Root-3 — неправильно.
Имена, применяемые пользователем для обозначения конструкций, не должны совпадать по написанию с ключевыми словами. Список зарезервированных слов в C++ приведен в приложении 6.
Имя метки перехода представляет символьно-цифровую конструкцию, например: metkal, pass, cross. Метки в программе на языке C++ не объявляются.
Строка символов — это последовательность символов, заключенная в кавычки. Например: “Строка символов”.
Числа, обозначающие целые и вещественные значения, записываются в десятичной системе счисления. Перед любым числом может стоять знак «+» или «-». В вещественном числе целая часть от дробной отделяется точкой. Вещественные числа, содержащие десятичную точку, должны иметь перед ней или после нее по крайней мере по одной цифре.
3. Базовые типы данных, используемые в C++
Большинство программ на языке C++ используют типы данных, представленные в табл. 15.
В программах на языке C++ часто используется слово void, которое указывает на то, что функция не возвращает или не имеет значений, передаваемых в нее. Следует иметь в виду, что нельзя создать переменную типа void.
Тип char служит для определения символьных переменных и строк. Символьная переменная — это один символ, заключенный в одинарные кавычки, например: 'а', '+', '&'. Строка символов в языке C++ — это массив символов, заканчивающийся нулевым байтом. Конец символьной строки (нулевой байт) обозначается символом NULL ('\0'). Строки символов заключаются в кавычки, например: "Строка символов".
Чтобы использовать переменную в программе, ее нужно объявить — указать тип переменной и ее имя. Оператор объявления переменных языка C++ в общем виде выглядит так: тип_переменной имя 1,..., имяN ;
Например: int i; float x,y,z; char c,s[64];
Обратите внимание, что при таком объявлении с — это символьная переменная (хранит один символ), a s [64] — это строка символов (массив символов).
Более сложные типы данных, а также типы, определяемые пользователем, будут рассмотрены при дальнейшем изложении материала.