
- •Данных. Составные структуры данных
- •3.2.1 Общие положения
- •3.2.1.1 Алфавит языка
- •3.2.1.2 Формат программы
- •3.2.1.3. Комментарии
- •// Пример однострочного комментария
- •3.2.1.4 Зарезервированные слова
- •3.2.2 Данные
- •3.2.2.1 Идентификаторы данных
- •3.2.2.2 Типы данных
- •3.2.2.3 Постоянные
- •3.2.2.4 Переменные
- •3.2.2.5 Массивы
- •3.2.2.6 Структуры
- •3.2.2.7 Объединения
- •Масив X:
- •Адреса элементу:
- •Масив y:
- •3.2.2.8 Перечисления
- •3.2.2.9 Указатели
- •Int Hour;
- •Int Press;
- •3.2.2.9.1 Динамическое выделения памяти для хранения данных
- •3.2.2.9.2 Динамическое освобождение памяти от хранимых данных
- •3.2.2.9.3 Ссылка
- •3.2.2.10 Множества
- •3.2.3 Выражения
- •3.2.3.1 Арифметические операции
- •Char int float | signed unsigned | short (базовый) long
- •3.2.3.2 Битовые операции
- •3.2.3.2 Логические операции
- •3.2.3.4 Операции отношения
- •3.2.3.5 Операция присваивания
- •3.2.3.6 Специальные операции
- •3.2.3.7 Элементарные функции
- •3.8 Приведение типов данных
- •3.2.3.9 Приоритеты операций
- •3.2.3.10 Адресные выражения
Команды
и данные С/С++.
Абстракция
Данных. Составные структуры данных
Язык программирования С++ разработан сотрудником фирмы Bell Laboratories Б.Страуструпом на основе уже существующего языка программирования С. В настоящее время ратифицирован международный стандарт языка ISO/IEC 14882: 2003 «Standard for the C++ Programming Language», который и послужил основой для написания этого раздела.
Язык С++ является алгоритмическим языком программирования общего назначения и представляет собой универсальный, аппаратно-независимый, мобильный язык программирования. В языке имеется лаконичный и функционально полный набор типов данных, операций, управляющих конструкций и библиотечных функций для поддержки практически всех парадигм программирования. Язык С++ позволяет создавать эффективные программы для работы как на низком аппаратно-ориентированном уровне (уровне битов и адресов), так и на высоком объектно-ориентированном уровне (уровне абстрактных классов и методов).
Вышеизложенное позволяет охарактеризовать С++ как язык программирования, в равной степени подходящий как для системного программирования, так и для решения инженерных задач.
3.2.1 Общие положения
В последующем тексте раздела используется несколько терминов, которыми должен владеть каждый программист.
Объявление сущности – синтаксическая конструкция языка С++, которая сообщает компилятору имя, тип и параметры некоторой сущности (например, переменной или функции), но опускает детали реализации этой сущности. Например:
int X; // объявление переменной
double Max (double X, double Y); // объявление функции
Определение сущности – синтаксическая конструкция языка С++, которая сообщает компилятору детали реализации сущности, которые были опущены в её объявлении (например, для функции определение содержит реализующие функцию операторы). Например:
double Max (double X, double Y) // определение функции
{
return X > Y ? X : Y;
}
Инициализация сущности – синтаксическая конструкция языка С++, которая присваивает сущности начальное значение, например:
int X = 0.0; // объявление переменной и её инициализация нулем
3.2.1.1 Алфавит языка
Алфавит языка С++ определяется следующим набором правил:
буква ::= a…z | A…Z | _ (подчеркивание)1;
восьмеричная цифра ::= 0…7;
десятичная цифра ::= 0…9;
шестнадцатиричная цифра ::= десятичная цифра | (a…f | A…F);
символ пунктуации ::= . | «,» | : | «;» | ? | !(акцент) | ’(апостроф) | "(кавычка);
скобка ::= (« ( » | « ) »)(круглые скобки) | (« [ » | « ] »)(квадратные скобки) | (« { » | « } »)(фигурные скобки) |
(< | >)(угловые скобки);
знак ::= - | +;
специальный символ ::= ~(тильда) | #(хэш или шарп) | % | ^(карэт) | &(амперсенд) | * | «|»(пайп) |
/(слэш) | \ (бэкслэш) | = | (пробел) | [ $(бакс) ];
управляющий символ ::= \a(тревога) | \b(возврат на предыдущую позицию) | \f(переход на новую страницу) | \n(переход на новую строку) |
\r(возврат каретки) | \t(горизонтальная табуляция) | \v(вертикальная табуляция) | ((0x | 0X) 0…1F | 7F…9F);
символ алфавита ::= буква | десятичная цифра | символ пунктуации | скобка | знак |
специальный символ | управляющий символ;
Заглавные и строчные буквы в конструкциях языка различаются.