Базовий курс програмування на С++. Урок 14. Вказівники, посилання |
Написав Joker | |||||
Понеділок, 23 листопада 2015 08:56 Переглядів: 4624
|
|||||
У всякої дії є своя нагорода і своя ціна Фільм “Мирний воїн”
Сьогодні ми вивчимо: 1. Розв’язок д/з минулого уроку 2. Адреса 3. Вказівники 4. Вказівники і масиви 5. Завдання для закріплення матеріалу
Розв’язок д/з минулого уроку 1. За допомогою рекурсії підрахувати добуток чисел у діапазоні введеного з клавіатури.
2. Ханойська вежа
Адреса Давайте навчимося дізнаватися адресу пам’яті, де зберігається певна змінна, тобто ту клітинку пам’яті яка зберігає значення певної змінної. Для цього треба використовувати значок & перед іменем змінної. & можна використовувати лише для змінних та елементів масиву. Змінній a присвоєно значення 5. &a – адреса змінної a.
Вказівники Вказівник – змінна, яка зберігає адресу іншої змінної. Створюється вказівник за допомогою *. Приклад програми:
- Змінна a зберігає значення 5 - Вказівник b зберігає адресу змінної a - Ми можемо дізнатися значення змінної a, використовуючи лише її адресу. Використовуємо символ * перед іменем вказівника, так ми звертаємося до цієї адреси і отримуємо значення, що там зберігається (dereference operator). - b – адреса - *b – дорівнює a- &b != &a
Вказівники і масиви Так просто ми створили вказівник на перший елемент масиву. Ім’я масиву – вказівник на його перший елемент. Крім цього, нам достатньо тільки 1 вказівника, щоб працювати з цілим масивом. *(p+1) означає, що здійснюється посилання на наступний елемент. Тепер згадайте функції і те як передаються масиви у функцію. Насправді, коли функції передається ім’я масиву, то вона отримує його початкове місце розташування і функція використовує його як змінну (вказівник). Це все можна записати так:
2. Вам дано два масиви x[a], y[b]. Створіть третій масив, який буде вміщати: - елементи обох попередніх масивів ( 10 Проголосувало ) Новіші матеріали:
Старіші матеріали:
3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved." |