Лекція 1. Прості елементи мови. Вступ

Сайт: Навчально-інформаційний портал НУБіП України
Курс: Основи програмування
Книга: Лекція 1. Прості елементи мови. Вступ
Надруковано: Гість-користувач
Дата: неділя, 15 лютого 2026, 19:43

1. Історія розвитку

Мова програмування С++ створена на фірмі Bell Lаbоrаtоrіеs в 1972р. Денісом Рітчі (Dennis MacAlistair Ritchie). Попередником цієї мови є мова АЛГОЛ-60, на основі якої була розроблена мова CPL (мова комбінованого програмування) в 1963р. (Кембриджський і Лондонський університети) потім BCPL (базова мова комбінованого програмування) 1967р. (Кембриджський університет). Метою цих розробок було відродити мову АЛГОЛ, зберегти контакт із ЕОМ. Тобто поруч із можливостями універсальної процедурної мови були додані засоби роботи з апаратною частиною ЕОМ. Тому мова BCPL виявилася громіздким і в 1970р. Кеном Томпсоном (Kenneth Lane Thompson) в Bell Lаbоrаtоrіеs була розроблена мова В, яка була вузько спрямована на розробку системних програм.

2. Основні поняття. Абетка. Арифметичні операції

Можна відзначити такі особливості мови:
 
1. Мова С належить до мов зі слабкою типізацією даних. Набагато ширше, ніж у мові Паскаль, передбачене неявне перетворення типів.
 
2. Передбачене використання покажчиків, які дають можливість оперувати з адресами й непрямою адресацією.
 
3. Клас об'єктів мови обмежений. Виключені такі структури даних як логічні, множини. Оскільки мова С тісно пов'язана з операційною системою UNІ, то багато можливостей реалізуються функціями операційної системи. Це забезпечило компактність і високу ефективність даної мови.
 
Мова відзначається внутрішньою єдністю, що властива мовам "для людини" (Паскаль, Лисп). Має невеликий перелік вихідних засобів, з яких можна створювати досить складні конструкції.
 
Однак перші варіанти мови не були уніфіковані, через що питання перенесення все-таки виникали. Тому в 1983р. інститут американських національних стандартів (АNSІ) створив комітет для розробки сучасної машинно незалежної мови С++. І в 1988р. ця робота закінчилася створенням мови "АNSІ С". ця версія широко використовується на персональних ЕОМ, зберігає більшість властивостей вихідної мови, відрізняється:
 
1. деяким описом функцій,
 
2. наявністю типу, що перелічується,
 
3. дозволяє операцію присвоєння для структур (записів), розширеною й уніфікованою бібліотекою функцій.
 
Можна вважати, що мова С++, з одного боку, є зручної, виразної й гнучкої для програмування широкого класу завдань. З іншого боку - вона в достатній мірі наближена до ЕОМ, дає засоби контролю процесом реалізації програми, але зберігає певну дистанцію, яка дозволяє не враховувати всі особливості архітектури ЕОМ.
Можна відзначити такі особливості мови:
 
1. Мова С належить до мов зі слабкою типізацією даних. Набагато ширше, ніж у мові Паскаль, передбачене неявне перетворення типів.
 
2. Передбачене використання покажчиків, які дають можливість оперувати з адресами й непрямою адресацією.
 
3. Клас об'єктів мови обмежений. Виключені такі структури даних як логічні, множини. Оскільки мова С тісно пов'язана з операційною системою UNІ, то багато можливостей реалізуються функціями операційної системи. Це забезпечило компактність і високу ефективність даної мови.
 
Мова відзначається внутрішньою єдністю, що властива мовам "для людини" (Паскаль, Лисп). Має невеликий перелік вихідних засобів, з яких можна створювати досить складні конструкції.
 
Однак перші варіанти мови не були уніфіковані, через що питання перенесення все-таки виникали. Тому в 1983р. інститут американських національних стандартів (АNSІ) створив комітет для розробки сучасної машинно незалежної мови С++. І в 1988р. ця робота закінчилася створенням мови "АNSІ С". ця версія широко використовується на персональних ЕОМ, зберігає більшість властивостей вихідної мови, відрізняється:
 
1. деяким описом функцій,
 
2. наявністю типу, що перелічується,
 
3. дозволяє операцію присвоєння для структур (записів), розширеною й уніфікованою бібліотекою функцій.
 
Можна вважати, що мова С++, з одного боку, є зручної, виразної й гнучкої для програмування широкого класу завдань. З іншого боку - вона в достатній мірі наближена до ЕОМ, дає засоби контролю процесом реалізації програми, але зберігає певну дистанцію, яка дозволяє не враховувати всі особливості архітектури ЕОМ.
 
 
Алфавіт
 
Символи мови складаються із трьох груп: літер, цифр, спеціальних символів. Літери – це букви латинського алфавіту (A-Z, a-z), а також кирилиці, які використовуються в коментарях і рядкових константах (А-я).
 
 
 
Спецсимволи складаються з:
 
 
 
1) знаків арифметичних операцій (+ додавання; - віднімання; * множення; /ділення, остача від ділення х % у цілих чисел);
 
2) знаків відношень; 
 
3) роздільників;
 
4) службових слів.
 
 
(++)(--)variable - префіксним оператором збільшення; variable(++)(--) - постфіксним оператором збільшення;

3. Знаки відносин. Службові слова. Константи


3. Роздільники: . , яйце [ ] { } ' " = : ;

Фігурні дужки мають значення операторних дужок (Веgіn - End мови Паскаль). Для коментарів використовуються пари знаків /*КОМЕНТАР*/.

4. Службові слова:

4. Константи

Константами називаються перерахування величин у програмі. Розділяють константи таких типів:

1. цілі (243)

2. з плаваючою крапкою (дійсні) (543.8) 3. символьні ('А') - 1 байт

4. строкові ("A") - 2 байта A + NULL 5. переліковного типу (АNSІ-C).

Цілі константи можуть записуватися в десятковій, восьмеричній і шістнадцятиричній системах вирахування.

Десяткова ціла константа подається звичайним образом (зі знаком або без нього): -2561; 458.

Ознакою восьмеричної константи є провідний нуль ліворуч: Ø257.

Шістнадцятирічна константа визначається двома початковими символами: ØХ. Нагадуємо, що для вистави чисел від 10 до 15 у цій системі використовуються

латинські букви: A - 10, B - 11, C - 12, D - 13, E - 14, F - 15.

Тому 3110 в цій системі буде записано ØХ1F (1*16+ F=31).

Символьні константи (CHAR) набувають значення одного символу й подаються в апострофах 'х', 'а', 'r' і займають 1 байт.

Недруковані символи, які не мають графічного зображення, подаються умовно двома символами: перший - використовується зворотний слеш, а другий - який-небудь певний символ. Так звана зворотна послідовність перемикання коду (escape sequence або ескейп послідовність).


Строкові константи

 

Строкові константи (строки, strіng) це послідовність символів, обмежена подвійними лапками: "strіng". Для переносу на інший рядок використовується зворотний слеш

"морозный\ день" - 12+1 байт

Як і в мові Паскаль, константи можуть задаватися своїм іменем. Але в мові С++ немає спеціального розділу опису констант.

Тому визначення констант реалізується 3-а способами:

1. Процесором і має вигляд:

#defіne<им’я константи> <літерал або значення> 

#defіne<им’я константи ><вираз з констант>

2. За допомогою слова constconst [тип] <ім'я> = <значення> const float pi = 3.1415926;

const maxint = 32767;

 3. Оголошення перерахування починається із ключового слова enum і має два формати вистави:

 Формат 1. enum [ім'я-тега-перелічення] {список-перелічення} визначник[,визначник...];

Доступність

Шрифти Шрифти

Розмір шрифта Розмір шрифта

1

Колір тексту Колір тексту

Колір тла Колір тла

Кернінг шрифтів Кернінг шрифтів

Видимість картинок Видимість картинок

Інтервал між літерами Інтервал між літерами

0

Висота рядка Висота рядка

1.2

Виділити посилання Виділити посилання

Вирівнювання тексту Вирівнювання тексту

Ширина абзацу Ширина абзацу

0