Jednodimenzionalni niz

1. Jednodimenzionalni niz

1.2. Inicijalizacija jednodimenzionalnog polja

Ako je potrebno, niz se može inicijalizirati tijekom najave ili u programu.

Najavom oblika:     

           int a[5]={10, 20, 30, 40, 50};

elementima niza pridružene su sljedeće vrijednosti:


U ovakvoj je inicijalizaciji potrebno pripaziti da broj elemenata u vitičastim zagradama ne bude veći od duljine niza. Može biti manji ili jednak. Iako, neke novije verzije prevoditelja za programski jezik C same će prilagoditi dimenziju niza, što u nekim slučajevima može prouzročiti greške pa treba biti oprezan.

Ako pri inicijalizaciji skup vrijednosti ima manje elemenata nego što je najavljeno, vrijednosti preostalih elemenata su 0 (to se odnosi samo na inicijalizaciju niza kao globalne varijable).

Primjerice, najava globalne varijable oblika

              int b[7]={10, 20, 30, 40, 50};

dat će sljedeći niz u memoriji:  

Ako na isti način najavimo lokalnu varijablu, početne vrijednosti elemenata niza b[5] i b[6] bit će neodređene (ono što u tom trenutku bude u memoriji).

Da bi se izbjegle eventualne pogreške, duljina niza se može i izostaviti. Program prevoditelj će tada sam odrediti duljinu niza, prema broju elemenata navedenih u vitičastim zagradama.

Prethodni se niz može najaviti i inicijalizirati i na sljedeći način:

           int b[]={10, 20, 30, 40, 50};

Zauzeti memorijski prostor u tom je primjeru ovakav: