r13-06.doc

50
Rozdział 13. Tablice i listy połączone W poprzednich rozdziałach deklarowaliśmy pojedyncze obiekty typu int, char, i tym podobne. Często chcemy jednak deklarować zbiory obiektów, takie jak 20 wartości typu int czy kilka obiektów typu CAT. Z tego rozdziału dowiesz się: czym są tablice i jak się je deklaruje, czym są łańcuchy i jak je tworzyć za pomocą tablic znaków, jaki jest związek pomiędzy tablicami a wskaźnikami, w jaki sposób posługiwać się arytmetyką na wskaźnikach odnoszących się do tablic. Czym jest tablica? Tablica (ang. array) jest zbiorem miejsc przechowywania danych, w którym każde z tych miejsc zawiera dane tego samego typu. Każde miejsce przechowywania jest nazywane elementem tablicy. Tablicę deklaruje się, zapisując typ, nazwę tablicy oraz jej rozmiar. Rozmiar tablicy jest zapisywany jako ujęta w nawiasy kwadratowe ilość elementów tablicy. Na przykład linia:

Upload: greg

Post on 16-Dec-2015

212 views

Category:

Documents


0 download

TRANSCRIPT

Szablon dla tlumaczy

2

Cz I ( Podstawy obsugi systemu WhizBang (Nagwek strony)

Rozdzia 13.Tablice i listy poczone

W poprzednich rozdziaach deklarowalimy pojedyncze obiekty typu int, char, i tym podobne. Czsto chcemy jednak deklarowa zbiory obiektw, takie jak 20 wartoci typu int czy kilka obiektw typu CAT.

Z tego rozdziau dowiesz si:

czym s tablice i jak si je deklaruje,

czym s acuchy i jak je tworzy za pomoc tablic znakw,

jaki jest zwizek pomidzy tablicami a wskanikami,

w jaki sposb posugiwa si arytmetyk na wskanikach odnoszcych si do tablic.

Czym jest tablica?

Tablica (ang. array) jest zbiorem miejsc przechowywania danych, w ktrym kade z tych miejsc zawiera dane tego samego typu. Kade miejsce przechowywania jest nazywane elementem tablicy.

Tablic deklaruje si, zapisujc typ, nazw tablicy oraz jej rozmiar. Rozmiar tablicy jest zapisywany jako ujta w nawiasy kwadratowe ilo elementw tablicy. Na przykad linia:

long LongArray[25];

deklaruje tablic skadajc si z dwudziestu piciu wartoci typu long, noszc nazw LongArray. Gdy kompilator natrafi na t deklaracj, zarezerwuje miejsce do przechowania wszystkich dwudziestu piciu elementw. Poniewa kada warto typu long wymaga czterech bajtw pamici, ta deklaracja rezerwuje sto bajtw cigego obszaru pamici, tak jak pokazano na rysunku 13.1.

Rys. 13.1. Deklarowanie tablicy

Elementy tablicy

Do kadego z elementw tablicy moemy si odwoa, podajc przesunicie (ang. offset) wzgldem nazwy tablicy. Elementy tablicy s liczone od zera. Tak wic pierwszym elementem tablicy jest arrayName[0]. W przykadzie z tablic LongArray, pierwszym elementem jest LongArray[0], drugim LongArray[1], itd.

Moe to by nieco mylce. Tablica SomeArray[3] zawiera trzy elementy. S to: SomeArray[0], SomeArray[1] oraz SomeArray[2]. Tablica SomeArray[n] zawiera n elementw ponumerowanych od SomeArray[0] do SomeArray[n-1].

Elementy tablicy LongArray[25] s ponumerowane od LongArray[0] do LongArray[24]. Listing 13.1 przedstawia sposb zadeklarowania tablicy piciu wartoci cakowitych i wypenienia jej wartociami.

Listing 13.1. Uycie tablicy wartoci cakowitych

0: //Listing 13.1 - Tablice

1: #include

2:

3: int main()

4: {

5: int myArray[5];

6: int i;

7: for ( i=0; i