Добавил:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
2
Добавлен:
31.01.2021
Размер:
12.39 Кб
Скачать

Інформатика — Теорія — Масиви покажчиків    Автори

|

Контакти

|

Підсистема допомоги

|

Методичні вказівки

|

Анотація

|

Назад

   ІнформатикаМасиви та покажчики : Масиви покажчиківЗміст курсу

Вступ

Теорія

Оголошення та звертання в одновимірних масивах

Оголошення та звертання до багатовимірних масивів

Масиви покажчиків

Практика

Практичне заняття 1

Практичне заняття 2

Поточна перевірка знань

Масиви і покажчики

Версія для друку

  Масиви покажчиків      Як і інші змінні, покажчики можна групувати в масиви, кожен елемент якого містить адресу рядка масиву даних у пам'яті. У такий спосіб можна зберігати дані з "рваними" краями. Цей масив схожий на двовимірну таблицю з одним виключенням: усі рядки в такому масиві можуть мати різну довжину. При збереженні рядків це дозволяє заощаджувати пам'ять, а при виконанні сортування рядків, вона виконується значно швидше, тому що змінюються тільки покажчики, а не вміст рядків.

Таблиця 1 - Масив рядків(прізвищ)

(0)

->

П

Е

Т

Р

О

В

\0

(1)

->

І

В

А

Н

О

В

\0

(2)

->

К

У

Ц

И

Й

\0

 (3)

->

В

А

Р

И

Ч

\0

 (4)

->

Ю

Ш

К

О

\0

  (5)

->

П

Л

Ю

Щ

\0

   Прмклад 1. Наведемо програму, що реалізує виведення подібної інформації з використанням масиву покажчиків.

#include <iostream.h>

void main ( )

{

     char *fio [ ] = { "Петров",

      "Іванов" ,

                "Куций",

           "Варич",

      "Юшко",

      "Плющ " };

     int str;

     for ( str = 0; str <= 5; str++)

          cout << " stroka " <<( str +1 ) << " = " << *( fio+str ) << endl;

     return 0;

}

     Особливістю масиву покажчиків є те, що кожен з цих покажчиків елементів масиву може вказувати на масив довільної довжини. Так двовимірний масив чисел можна записати як матрицю, і як одновимірний масив покажчиків, наприклад:

int matr[5][7];

int *pmt [5];.

При цьому двовимірний масив розглядається як одновимірний масив рядків, кожен елемент якого - це теж масив стовпців, тобто масив масивів, тому індексування елементів матриці записується у вигляді mas [i][j]. Якщо двовимірний масив описаний за допомогою масиву покажчиків, то доступ до mas [i][j] елемента може здійснюватися одним зі способів:* ( pm[i]+j ) або *( *( pm+i )+j ) .

 © 2008 ХНУРЭ, Інформатики, Сінельнікова Т.Ф., informatika@kture.Kharkov.uaРозроблено за допомогою LERSUS

Соседние файлы в папке content