Kategoriak: All - memorija

arabera Bruno Kranic 4 years ago

181

Jednodimenzionalna polja

Jednodimenzionalní pole v C++ mají pevnou délku, která se nedá měnit během běhu programu. Pokud délka pole přesahuje počet přiřazených hodnot, zbývajícím prvkům je automaticky přiřazena hodnota 0.

Jednodimenzionalna polja

Jednodimenzionalna polja

Oprez

To će prouzročiti neispravan rad programa:
Ako se vrijednost pridružuje članu s nedozvoljenim indeksom, vrijednost će se pohraniti u memoriju na mjesto predviđeno za druge sadržaje što će vjerojatno prouzročiti pogrešan rad programa.
Ako se dohvaća član s nedozvoljenim indeksom, rezultat je slučajni broj.
Ako se navede prevelik ili negativan indeks, prevoditelj neće javiti pogrešku i pri izvršavanju programa pristupit će se memorijskoj adresi koja nije u području rezerviranom za polje.
U radu s poljima treba biti oprezan jer jezik C++ ne provjerava granice polja prilikom pristupa članovima polja.

Duljina deklariranog polja

Ako je deklarirana duljina polja veća od broja članova kojima je pridružena vrijednost, preostalim se članovima pridružuje vrijednost 0.
Mora biti veća ili jednaka broju članova polja.
Duljina deklariranog polja se ne može mijenjati tijekom izvođenja programa.

Način zadavanja indeksa članova niza

X[a*4-1]
Cjelobrojni izraz
X[a]
Cjelobronja varijabla
X[3]
Cjelobrojna konstanta

Izdvajanje polja

Kod izdvajanja (dohvaćanja) članova niza, indeks člana niza može biti zadan kao:
cjelobrojni izraz
cjelobrojna varijabla
cjelobrojna konstanta

Općenito

Članovima deklariranog polja mogu se pridružiti vrijednosti.
Polje treba deklarirati.
Svaki od članova niza se označava cjelobrojnim indeksom i to tako da prvi član niza ima indeks 0, a posljednji član indeks za jedan manji od duljine polja.
Kod jednodimenzionalnih polja članovi polja (podaci) su poredani u niz (jedan iza drugoga), a indeks svakog od članova odgovara njegovoj udaljenosti od prvog člana.