- •Конспект студента. Коротка хронологія найважливіших етапів розвитку мови :
- •Алфавіт мови.
- •Ідентифікатори
- •Ключові слова
- •Управляючі послідовності
- •Концепція типу даних
- •Основні типи даних
- •Діапазони значень простих типів даних для ibm pc
- •Символьний тип (char)
- •Розширений символьний тип (wchar_t)
- •Логічний тип (bool)
- •Змінні. Клас пам'яті.
- •Типи з плаваючою крапкою (float, double і long double)
- •Перетворення типів.
- •Структура програми
- •Проста програма
- •Змінні і вирази
- •Область дії ідентифікатора
- •Вирази.
- •Порядок обчислення виразів
- •Бітові операції.
- •Введення і виведення даних.
- •Стежте за помилками переповнювання
- •Стежте за помилками неспівпадання типів
- •Читання символьних даних
- •Читання слів з клавіатури
- •Форматування введення-виведення засобами мови с Функція printf()
- •Функція scanf()
- •If (вираз) оператор 1; [else оператор 2;]
Змінні і вирази
У будь-якій програмі потрібно проводити обчислення. Для обчислення значень використовуються вирази, які складаються з операндів, знаків операцій і дужок. Операнди задають дані для обчислень. Операції задають дії, які необхідно виконати. Кожен операнд є, у свою чергу, виразом або одним з його окремих випадків, наприклад, константою або змінною. Операції виконуються відповідно до пріоритетів. Для зміни порядку виконання операцій використовуються круглі дужки.
Розглянемо складові частини виразів і правила їх обчислення.
Змінні
Змінна — це іменована область пам'яті, в якій зберігаються дані визначеного типу. Змінна має ім'я і значення. Ім'я служить для звернення до області пам'яті, в якій зберігається значення. Під час виконання програми значення змінної можна змінювати. Перед використанням будь-яка змінна повинна бути описана.
Змінні
Приклад опису цілої змінної з ім'ям а і дійсної змінної х:
int а; float x;
Розглянемо правила завдання складових частин цього оператора.
Необов'язковий клас пам'яті може приймати одне із значень auto, extern, static і register.
Модифікатор const показує, що значення змінної змінювати не можна. Таку змінну називають іменованою константою, або просто константою.
При описі можна привласнити змінній початкове значення, це називається ініціалізацією. Ініціалізатор можна записувати в двох формах — із знаком рівності: = значення або в круглих дужках: (значення )
Загальний вид оператора опису змінних:
[клас пам'яті] [const] тип ім'я [ініціалізатор];
Константа повинна бути ініціалізована при оголошенні. У одному операторові можна описати декілька змінних одного типу, розділяючи їх комами.
Приклади:
short int а = 1; // ціла змінна а
const char С = ‘С’; // символьна константа С
char s, sf = 'f’; // ініціалізація відноситься тільки до sf
char t (54);
float с = 0.22, x(3), sum;
Якщо тип ініціалізованого значення, не співпадає з типом змінної, виконуються перетворення типу за певними правилами.
Опис змінної, окрім типу і класу пам'яті, явно або за умовчанням задає її область дії. Клас пам'яті і область дії залежать не тільки від власне опису, але і від місця його розміщення в тексті програми.
Область дії ідентифікатора — це частина програми, в якій його можна використовувати для доступу пов'язаної з ним області пам'яті. Залежно від області дії змінна може бути локальною або глобальною.
Якщо змінна визначена усередині блоку (нагадаю, що блок обмежений фігурними дужками), вона називається локальною, область її дії — від точки опису до кінця блоку, включаючи всі вкладені блоки. Якщо змінна визначена поза будь-яким блоком, вона називається глобальною і областю її дії вважається файл, в якому вона визначена, від точки опису до його кінця.
Клас пам'яті визначає час життя і область видимості програмного об'єкту (зокрема, змінной).
Якщо клас пам'яті не вказаний явним чином, він визначається компілятором виходячи з контексту оголошення.
Час життя може бути постійним (протягом виконання програми) і тимчасовим (протягом виконання блоку).
Область видимості ідентифікатора називається частина тексту програми, з якої допустимий звичайний доступ до пов’язаної з ідентифікатором області пам'яті. Найчастіше область видимості співпадає з областю дії.
Виключенням є ситуація, коли у вкладеному блоці описана змінна з таким же ім'ям. В цьому випадку зовнішня змінна у вкладеному блоці невидима, хоча він і входить в її область дії. Проте до цієї змінної, якщо вона глобальна, можна звернутися, використовуючи операцію доступу до області видимості ::.
