Складені значення структурованих типів, зокрема, масивів, будуються із значень компонент за допомогою конструкторів, а значення компонент витягуються із структури за допомогою селекторів, причому кожному методу структуризації відповідає своя пара конструкторів і селекторів.
Якщо, наприклад, існує опис змінної w регулярного типу, то складене значення w з компонентами w1 ..., wn задається за допомогою конструктора. При цьому конструктор розподіляє пам'ять під змінну-вектор w і дозволяє надалі сприймати її як єдине ціле.
Для розподілу пам'яті під масив конструктор пов'язує з ім'ям відповідної змінної деяку адресу wo і резервує необхідну для розміщення всіх компонент кількість комірок пам'яті з урахуванням розмірності компонент. Розміщення структури регулярного типу в пам'яті ЕОМ ілюструється рис.1.
w1
w2
. . .
wi-1
wi
wi+1
. . .
wn-1
wn
wo
Рис.3.1. Розміщення вектора w в пам’яті ЕОМ.
Операція, яка дозволяє звертатися до окремих компонентів вектора, це - селектор. Дана операція задає правило обчислення номера потрібної компоненти. Наприклад, при звертанні w[i] селектор обчислює адресу цієї компоненти за допомогою складання з wo значення індексу i, забезпечуючи тим самим прямий доступ до самої компоненти.
Як індекси при звертанні до елементів масивів можуть використовуватися довільні вирази, що включають константи і змінні допустимих порядкових типів. Наприклад,
A [3,1], С[2,k], Mas [i + 2, j].
¨¨¨ У більшості мов програмування використовується числовий принцип нумерації елементів масиву, причому, в одних мовах програмування нумерація може починатись з 0, а в інших — з 1.
Переглядів: 156
Не знайшли потрібну інформацію? Скористайтесь пошуком google: