
- •Конспект студента. Коротка хронологія найважливіших етапів розвитку мови :
- •Алфавіт мови.
- •Ідентифікатори
- •Ключові слова
- •Управляючі послідовності
- •Концепція типу даних
- •Основні типи даних
- •Діапазони значень простих типів даних для ibm pc
- •Типи з плаваючою крапкою (float, double і long double)
- •Символьний тип (char)
- •Розширений символьний тип (wchar_t)
- •Логічний тип (bool)
- •Змінні. Клас пам'яті.
- •Перетворення типів.
- •Структура програми
- •Проста програма
- •Змінні і вирази
- •Область дії ідентифікатора
- •Вирази.
- •Порядок обчислення виразів
- •Бітові операції.
- •Введення і виведення даних.
- •Стежте за помилками переповнювання
- •Стежте за помилками неспівпадання типів
- •Читання символьних даних
- •Читання слів з клавіатури
- •Форматування введення-виведення засобами мови с Функція printf()
- •Функція scanf()
- •If (вираз) оператор 1; [else оператор 2;]
Конспект студента. Коротка хронологія найважливіших етапів розвитку мови :
1979 р. Перша реалізація компілятора мови Си з класами - раннього
варіанту Си++.
1982 р. Перша публікація по мові Си з класами.
1983 р. Поява назви Си++.
Перша реалізація компілятора Си++.
р. Перший довідник по мові Си++.
р. Компілятор Cfront фірми AT&T версія 1.0 (перша комерційна
версія). Вихід книги "The C++ Programming Language" Бьерна Страуструпа.
1986 р. Перша конференція OOPSLA що стала, головною з
конференцій по об'єктно-орієнтованому програмуванню в світі. Перше комерційне перенесення компілятора Cfront на персональний комп'ютер.
1987 р. Компілятор Cfront версія 1.2.
Перша конференція USENIX, спеціально присвячена мові Си++. Поява компілятора GNU C++ (версія 1.13).
1988 р. Випуск компілятора Си++ фірмою Oregon Software.
Випуск компілятора Си++ фірмою Zortech. Конференція USENIX з реалізації мови Си++.
1989 р. Версія 2.0 компілятора Cfront
Організаційні збори комітету по стандартизації мови Си++ — початок процесу стандартизації.
1990 р. Випуск компілятора Си++ фірмою Borland.
Вихід книги "The Annotated C++ Reference Manual" Маргарет Эллис і Бьєрна Страуструпа - до появи офіційного стандарту фактичний стандарт мови. Часто її називали просто "Книга" (The Book) або ARM. До проекту стандарту додані шаблони і виняткові ситуації.
1991 р. Вихід др. видання книги "The C++Programming Language".
Перше засідання комітету ISO WG21 по стандартизації мови Си++ — перехід від американського національного стандарту до міжнародної стандартизації.
Версія 3.0 компілятора Cfront, в якій реалізовані шаблони.
1992 р. Випуск компілятора Си++ фірмою DEC.
Випуск компілятора Си++ фірмою Microsoft. Випуск компілятора Си++ фірмою IBM.
1993 р. Зареєстрований проект стандарту ANSI/ISO.
1994г. Стандартна бібліотеки шаблонів STL включена в проект стандарту мови.
1997г. Прийнятий стандарт ANSI/ISO мови Си++.
Вихід третього видання книги "The C++ Programming Language".
Базові засоби мови C++. Склад мови
У тексті на будь-якій природній мові можна виділити чотири основні елементи: символи, слова, словосполучення і речення. Подібні елементи містить і алгоритмічна мова, тільки слова називають лексемами (елементарними конструкціями), словосполучення — виразами, а речення — операторами. Лексеми утворюються з символів, вирази — з лексем і символів, а оператори — з символів, виразів і лексем:
Алфавіт мови, або його символи — це основні неподільні знаки, за допомогою яких пишуться всі тексти на мові.
Лексема, або елементарна конструкція, — мінімальна одиниця мови, що має самостійний сенс.
Вираз задає правило обчислення деякого значення.
Оператор задає закінчений опис деякої дії.
Для опису складної дії потрібна послідовність операторів. Оператори можуть бути об'єднані в складеного оператора, або блок. В цьому випадку вони розглядаються як один оператор.
Оператори бувають виконувані і невиконувані. Виконувані оператори задають дії над даними. Невиконувані оператори служать для опису даних, тому їх часто називають операторами опису або просто описами.
Кожен елемент мови визначається синтаксисом і семантикою. Синтаксичні визначення встановлюють правила побудови елементів мови, а семантика визначає їх сенс і правила використання. Об'єднана єдиним алгоритмом сукупність описів і операторів утворює програму на алгоритмічній мові. Для того, щоб виконати програму, потрібно перекласти її мовою, зрозумілою процесору, — в машинні коди. Цей процес складається з декількох етапів.
Для опису мови в документації часто використовується деяка формальна метамова, наприклад, формули Бекуса—Наура або синтаксичні діаграми. Для наочності і простоти викладу в цій книзі використовується широко поширений неформальний спосіб опису, при якому необов'язкові частини синтаксичних конструкцій полягають в квадратні дужки, текст, який необхідно замінити конкретним значенням, пишеться по-російськи, а вибір одного з декількох елементів позначається вертикальною межею. Наприклад, запис
[ void | int ] ім'я();
означає, що замість конструкції ім'я необхідно вказати конкретне ім'я відповідно до правил мови, а перед ним може знаходитися або void, або int, або нічого. Фігурні дужки використовуються для угрупування елементів, з яких потрібно вибрати тільки один. У тих випадках, коли квадратні дужки є елементом синтаксису, це обмовляється особливо.