Основи вказівників у C++

Aug 24, 2024

Лекція: Основи програмування на C++ - Вказівники

Що таке вказівники?

  • Визначення: Вказівники — це змінні, які зберігають адреси інших змінних у пам'яті.
  • Функціональність:
    • Непрямий доступ до змінних.
    • Необхідні для динамічної пам'яті та передачі даних у функції.

Створення вказівника

  • Приклад:
    int x = 10;
    int *ptr;  // оголошення вказівника
    ptr = &x;  // присвоєння адреси змінної x
    
  • Операція взяття адреси: Використовується символ &.

Доступ до значення через вказівник

  • Доступ за допомогою зірочки (*):
    • Використовується для отримання значення змінної, на яку вказує вказівник.
    • Приклад: *ptr = 20; змінює значення змінної x на 20.

Вказівники на вказівники

  • Вказівник може вказувати на інший вказівник.
  • Застосування: Динамічні масиви та робота з динамічною пам'яттю.

Застосування вказівників

  • Виведення масиву через вказівник:

    void printArray(int *arr, int size);
    

    Передача масиву в функцію через вказівник.

  • Функція обміну значень:

    void swap(int *x, int *y);
    

    Заміна значень через вказівники.

Арифметика вказівників

  • Операції:

    • Додавання (+) та віднімання (-) для доступу до елементів масиву.
    • Інкремент (++) та декремент (--) - пересування вказівника.
  • Приклад:

    • ptr + 2 — доступ до елемента з індексом 2.
    • *(ptr + 2) — значення цього елемента.

Практичні завдання

  1. Створення масиву та виведення через вказівник.
  2. Обмін значень двох змінних через вказівники.

Підсумки

  • Вказівники: Потужний інструмент для роботи з пам'яттю і ефективного управління даними.
  • Арифметика вказівників: Хоча рідко використовується, але може бути корисною в специфічних задачах.

  • Важливо розуміти основи роботи з вказівниками для більш глибокого розуміння C++ і управління пам'яттю.
  • Задачі з масивами та інші приклади показують практичне застосування теорії.

Дякую за увагу і до наступної зустрічі!