Проектування програм з використанням покажчиків

3. Операції над покажчиками

Операція визначення адреси &  - це  унарна операція, яка повертає адресу свого операнд.

int х=16;

int *хPtr;

то наступний оператор

хPtr=&х;

присвоїть змінній-покажчику хPtr адресу змінної х.


Операція * називається непрямим адресуванням – це операція, що повертає значення об'єкта, на який посилається операнд (тобто покажчик).
Приклад:

printf(“%d”, *хPtr);

Виведе значення змінної х, тобто 16


Непряме адресування покажчика, який не був до цього моменту ініційований або якому не присвоїли значення, призведе до фатальної помилки під час виконання програми та непередбачених результатів щодо використання пам'яті

#include <stdio.h>

#include <conio.h>

main()

{

int a;

int *aPtr;

a=7;

aPtr=&a;

printf(“Адреса змінної а = %p\n Значення aPtr = %p \n\n”, &a, aPtr);

printf(“Значення змінної а = %d\n Значення *aPtr = %d \n\n”, a, *aPtr);

printf(“Перевіримо роботу операцій * i &.\n &*аPtr = %p\n*&aPtr = %p \n\n”, &*aPtr, *&aPtr);

return 0;

}

#include <stdio.h>

#include <conio.h>

main()

{

int a;

int *aPtr;

a=7;

aPtr=&a;

printf(“variable adress а = %p\n value aPtr = %p \n\n”, &a, aPtr);

printf(“value variable а = %d\n value *aPtr = %d \n\n”, a, *aPtr);

printf(“Check the operation *  and  &.\n &*аPtr = %p\n*&aPtr = %p \n\n”, &*aPtr, *&aPtr);

getch();

return 0;

}




Доступність

Шрифти Шрифти

Розмір шрифта Розмір шрифта

1

Колір тексту Колір тексту

Колір тла Колір тла

Кернінг шрифтів Кернінг шрифтів

Видимість картинок Видимість картинок

Інтервал між літерами Інтервал між літерами

0

Висота рядка Висота рядка

1.2

Виділити посилання Виділити посилання

Вирівнювання тексту Вирівнювання тексту

Ширина абзацу Ширина абзацу

0