Professional Documents
Culture Documents
Лекція №12 Передача параметрів у функцію
Лекція №12 Передача параметрів у функцію
Лекція № 12
Передача параметрів у функцію. .
Лектор
Проскура СвІтлана Леонідівна
slproskura@gmail.com
1
План
1. Області видимості. Локальна глобальна області
видимості.
Розіменування вказівника – це унарний оператор * (непряма Жодна з операційне дієна посилання, а відноситьсядо
адресація ). Розіменування дає можливість працювати з об’єктом того об'єкту, з яким вона зв'язана. Таким чином,
через вказівник. посилання повністю аналогічнt вихідного імені об'єкта.
Унарні оператори * і & мають вищий пріоритет, ніж арифметичні Існують деякі обмеження використання операції
оператори, так що зустрівши привласнення y=*p+1 компілятор посилання&, зокрема запам'ятайте три "не можна":
візьме те, на що указує р і додасть до нього 1, а результат
привласнить змінній у. 1.Не можна виконувати посилання на посилання.
int a;
int&&ra=a;//помилка
Аналогічно *p+=1 збільшує на одиницю те, на що посилається p;
ті ж дії виконують ++*p і (*p)++.
2.Не можна створювати масив посилань.
int a;
У останньому записі дужки необхідні, оскільки, якщо їх не буде, int & ra [10];//помилка
збільшиться значення самого покажчика, а не те, на що він
посилається. Це обумовлено тим, що унарні оператори * та +
+мають однакові пріоритет і порядок виконання - справа наліво. 3.Не можна створювати покажчик на посилання.
int a;
int & * pra = &a; //помилка
Будь-яку адресу можна перевірити на рівність (==) або
Локалізація імен
❖Кожний ідентифікатор у програмі має свою область дії імені,
або область видимості.
❖Область видимості ідентифікатора — це область
програми, в межах якої на цей ідентифікатор можна
посилатися.
❖Послідовність і кількість блоків, у яких іменуються ті чи інші
об’єкти, можуть бути довільними.
❖Області дії ідентифікатора:
● вираз,
● блок,
● функція,
● файл,
● програма
❖У загальному випадку область дії іменування поширюється
від точки, де ідентифікатор було оголошено, до кінця блока.
❖Кінцем блока вважають праву фігурну дужку }
Локалізація імен
Усі ідентифікатори, оголошені всередині функції, є
локалізованими в ній, тобто ззовні підпрограми вони є
невидимими.
змінна
2
Функція1
функція2
змінн
а1
Локалізація імен
Специфікатор
register Функції одного файлу можуть Статичні змінні
застосовують звертатися до змінних, визначених записують із
під час в інших файлах, якщо ці змінні ключовим
оголошення було оголошено з ключовим словом static.
автоматичної словом extern, тобто якщо вони є На відміну від
змінної, аби зовнішніми. Змінні створюються на
автоматичної
вказати початку роботи програми,
компілятору на зберігають свої значення протягом
статична
необхідність її роботи і знищуються лише після змінна не
зберігання завершення роботи програми. створюється
змінної не в Специфікатор extern повідомляє автоматично і
оперативній компілятор про те, що відповідна не знищується
пам’яті, а в змінна оголошуватиметься в будь після виходу з
регістрі якому місці програми. функції.
процесора.
Розподіл оперативної пам’яті
Копія
NameVarible 1234 NameVariable
Адреса 46С7:СЕ7Е
NameVarible 1234
NameVariable 5678
46С7:СЕ7Е
Last In
First Out
Дякую за увагу!!!!