
- •1 Коротка історія мови програмування с.
- •2 Характеристика мови програмування.
- •3 Структура програми на мові с
- •4 Етапи обробки програми .
- •5 Призначення директиви препроцесора.
- •6 Елементи мови програмування с.
- •7 Алфавіт мови програмування с.
- •8.Ідентифікатори мови програмування с.
- •10 Коментарі мови програмування с.
- •11 Зберігання інформації в константах .
- •12 Оператори присвоєння
- •13 Вирази на мові програмування с
- •14 Арифметичні операції.
- •15.Унарні арифметичні операції
- •17 Логічні операції.
- •28 Задання значення змінних при описі.
- •29 Літеральні константи.
- •30 Символьні константи
- •31 Завдання символічних констант за допомогою ключового слова const.
- •32 Завдання символічних кон6стант за допомогою директиви define.
- •33Специфікатори тип
- •35 Функції scanf() форматного виводу даних з клавіатури.
- •36 Функція рrintf(), форматного виводу даних на екран.
- •39 Поняття про складні оператори.
- •40 Поняття про блоки .
- •41 Прості і складні вирази.
- •46 Призначення оператора вибору варіантів switch
- •47 Синтаксис оператора вибору варіанту switch.
- •48 Призначення мітки default в операторі switch.
- •50.Оператори циклів
- •51.Арифметичний оператор циклу for
- •52.Оператор циклу while
- •53.Оператор циклу do while
- •54.Оператор continue для управління роботою циклів
- •55.Призначення оператора break в операторах циклів
- •56.Означення масиву
- •67.Способи обробки елементів масивів
- •68.Обробка масивів по одному елементу зліва направо
- •69.Обробка масивів по кілька елементів зліва направо
- •72.Сортування масивів
- •81.Адресна арифметика
- •86.Операції порівняння вказівників
- •87.Обчислення зміщення вказівників
- •88.Операція для визначення кількості байтів змінної даного типу
81.Адресна арифметика
Адресу першого елементу масиву легко одержати по його вказівнику- його імені. Щоб звернутися до будь-якого елементу масиву, вказівник має одержати приріст, кратний розміру елементів масиву. Для звертання до елементів масиву з допомогою вказівників використовується адресна арифметика. Адресна арифметика проста в використанні і з її допомогою легко працювати з вказівниками. Тут використовується дві унарні операції: ін кременту і декременту.
82.Інкрементування вказівників
Інкрементування вказівників. Інкрементувати вказівник – це значить збільшити його значення. Якщо значення вказівника інкрементувати на одиницю, то адресна арифметика автоматично адресу, яку він зберігає, так, щоб він вказував на наступний елемент масиву. Іншими словами, компілятор знає тип вказівника (з його опису) і збільшує збережувану в ньому адресу на довжину елемента даних.
83.Декрементування вказівників
Декрементування вказівників. Все що було сказано по відношенню до операції інкрементування вказівників відноситься і до операції декрементування вказівників, тільки в цьому випадку величина вказівника зменшується.
84.Звернення до елементів масиву через вказівники
85.Індексний запис і вказівники
Ім’я масиву без квадратних дужок – це вказівник на перший елемент масиву. Тому до першого елементу можна звертатися з допомогою операції посилання по вказівнику. Нехай описаний масив array[]. Тоді вираз *array дасть його перший елемент, *(array +1) - другий і т. д. . Тоді можна записати такі співвідношення.
*(array)== array[0]
*(array +1) == array[1]
*(array +2) == array[2]
………………………………
*(array +n) == array[n]
Це зв’язок між зверненням до масиву по індексу і через операції з вказівниками.
Не можна використовувати не заданого (не ініціалізованого) вказівника в лівій частині оператора присвоєння.
86.Операції порівняння вказівників
Вказівники можна також порівнювати. Порівняння має сенс тільки для вказівників на один і той масив. При цьому виконуються операції порівняння = =, !=, <, >, >+, <+.
Молодші елементи масиву, тобто елементи з меншими індексами мають і менші адреси. Якщо ptr1 i ptr2 вказують на елементи одного і того масиву, то співвідношення ptr1 < ptr2 істинне, коли ptr1 вказує на елемент з меншим індексом, ніж ptr2
Операції множення і ділення над вказівниками не виконуються.
87.Обчислення зміщення вказівників
Зміщення – це фактичне віднімання двох вказівників, Якщо є два вказівники на різні елементи одного масиву, то їх можна відняти один від одного і вияснити , на якій відстані вони знаходяться Адресна арифметика забезпечує автоматичне масштабування результату, і в підсумку відстань виражається в кількості елементів. Якщо ptr1 i ptr2 вказують на елементи одного і того масиву, то вираз ptr1-ptr2 дає відстань між цими елементами.
88.Операція для визначення кількості байтів змінної даного типу
Це ключове слово sizeof, яке означає одномісну операцію і визначає кількість байт для змінної даного типу.
sizeof(int) =4
sizeof(short) =2
sizeof(float) =4
sizeof(char) =1
sizeof(double) =8