Студопедия
Новини освіти і науки:
Контакти
 


Тлумачний словник






ТЕОРЕТИЧНА ЧАСТИНА

 

Покажчик- це змінна, що містить адресу деякого об'єкта, або адреса пам'яті, що розподіляється для розміщення ідентифікатора (в якості ідентифікатора може виступати ім'я змінної, масиву, структури, строкової літери). У тому випадку, якщо змінна оголошена як покажчик, вона містить адресу пам'яті, по якій може знаходиться скалярна величина будь-якого типу. Взагалі ж це просто ціле число.

При оголошенні змінної типу покажчик, необхідно визначити тип об'єкта даних, адресу яких буде містити змінна, і ім'я покажчика з попередньою зірочкою (або групою зірочок). Формат оголошення покажчика:

Специфікатор - типу [ модифікатор ] * описатель.

Тип*<ім'я змінної>;

Специфікатор - типу задає тип об'єкта і може бути основного типу.

При оголошенні покажчика модифікаторами можуть виступати ключові слова const, near, far, huge. Ключове слово const вказує, що покажчик не може бути змінений у програмі. Розмір змінної, оголошеної як покажчик, залежить від архітектури комп'ютера і від використовуваної моделі пам'яті, для якої буде компілюватися програма. Покажчики на різні типи даних не обов'язково повинні мати однакову довжину.

Для модифікації розміру покажчика можна використовувати ключові слова near, far, huge.

Приклад:

unsigned int * a; /* змінна а є покажчиком на тип unsigned int (цілі числа без знака) */

double * x; /* змінна х указує на тип даних подвоєної точності з плавоючою точкою*/

char * fuffer ; /*з'являється покажчик з ім'ям fuffer який указує на змінну типу char */

double nomer;

void *addres;

addres = & nomer;

(double *)addres ++;

/* Змінна addres оголошена як покажчик на об'єкт будь-якого типу. Тому їй можна привласнити адресу будь-якого об'єкта (& - операція обчислення адреси). Однак, як було відзначено вище, жодна арифметична операція не може бути виконана над покажчиком, доти не буде явно визначений тип даних, на які він указує. Це можна зробити, використовуючи операцію приведення типу (double *) для перетворення addres до покажчика на тип double, а потім збільшення адреси. */

const * dr; /* змінна dr оголошена як покажчик на константний вираз, тобто значення покажчика може змінюватися в процесі виконання програми, а величина, на яку він указує, ні. */

unsigned char * const w = &obj; /* змінна w оголошена як константний покажчик на дані типу char unsigned. Це означає, що на протязі усієї програми w буде вказувати на ту саму область пам'яті. Зміст же цієї області може бути змінено. */




<== попередня сторінка | наступна сторінка ==>
ЛАБОРАТОРНА РОБОТА N 9 | Зв’язок між покажчиками та масивами

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

 

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.002 сек.