c arrays with examples
Što su nizovi u C ++-u? Zašto su korisni?
U ovome Kompletna C ++ serija treninga , pogledati ćemo Arrays u C ++ u ovom vodiču.
Niz u jeziku C ++ može se jednostavno definirati kao zbirka podataka.
Ako jedna od aplikacija koju dizajniram zahtijeva 100 varijabli cjelobrojnog podatkovnog tipa. Tada ću, koristeći deklaraciju varijable, morati deklarirati 100 različitih cjelobrojnih varijabli. To će, pak, zaista biti glomazno.
Umjesto toga, što kažete ako proglasim jednu varijablu koja drži susjednih 100 memorijskih mjesta? Ovdje se pojavljuju nizovi.
najbolji mp3 downloader glazbe za računalo
Što ćete naučiti:
Nizovi u C ++
Niz se može definirati kao zbirka varijabli istog tipa podataka i ima susjedna memorijska mjesta.
Dakle, ako definiram niz od 100 cijelih brojeva, njegov prikaz memorije bit će donekle prikazan dolje:
Kao što je gore prikazano, 0 ... 99 su memorijska mjesta za ovaj niz i susjedna su. Prazne ploče stvarni su elementi niza. Pojedinačnim elementima niza može se pristupiti pomoću indeksa. U gornjem dijagramu, prvi indeks niza je 0, dok je posljednji indeks 99 (jer je ovo niz od 100 elemenata) .0 1 2 3 4 5 ……. … .. 99.
Imajte na umu da je početni indeks niza uvijek 0. Stoga će za niz od n elemenata početni indeks niza biti 0, a posljednji indeks n-1.
Proglasite niz
Deklaracija niza u C ++-u općenito izgleda kako je prikazano dolje:
datatype arrayName ( arraySize );
Gornja deklaracija odnosi se na jednodimenzionalni niz. Ovdje je vrsta podataka bilo koja vrsta podataka prihvatljiva u C ++. ‘ArrayName’ naziv je niza koji stvaramo, dok je arraySize koji je uvijek zatvoren u uglate zagrade (()) broj elemenata koje će niz sadržavati. ArraySize uvijek mora biti konstantan izraz.
Na primjer, ako moram deklarirati niz myarray s 10 elemenata tipa Integer, tada će deklaracija izgledati kao :
int myarray (10);
Slično tome, izjava za niz ‘plaća’ tipa double s 20 elemenata izgledat će kao što je prikazano u nastavku:
double salary ( 20 );
Inicijalizacija niza
Jednom kada je niz deklariran, može se inicijalizirati odgovarajućim vrijednostima. Broj vrijednosti dodijeljenih nizu nikada ne smije premašiti veličinu niza navedenog u deklaraciji.
Dakle, proglasimo niz veličine 5 i upišimo cijeli broj i dodijelimo mu naziv myarray.
int myarray(5);
Vrijednosti elementima polja možemo dodijeliti jedan po jedan na sljedeći način:
myarray(0) = 1; myarray(1) = 2; myarray(2) = 3; myarray(3) = 4; myarray(4) = 5;
Umjesto inicijalizacije svakog pojedinog elementa, također možemo inicijalizirati cijeli niz tijekom same deklaracije, kao što je prikazano dolje:
int myarray(5) = {1, 2, 3, 4, 5};
Kao što se gore vidi, inicijalizacija elemenata niza u vrijednosti vrši se pomoću kovrčavih zagrada ({}).
Kao rezultat gornje inicijalizacije, niz će izgledati kako je prikazano dolje:
Također možemo inicijalizirati nizove bez navođenja bilo koje veličine i samo određivanjem elemenata.
To se radi kako je prikazano u nastavku:
int myarray() = {1, 2, 3, 4, 5};
U ovom slučaju, kada veličina polja nije navedena, sastavljač dodjeljuje veličinu jednaku broju elemenata kojima je niz inicijaliziran. Tako će u gornjem slučaju veličina myarrayja biti 5.
Pristup elementima niza
Elementima niza može se pristupiti pomoću indeksa niza. Indeks niza uvijek počinje od 0 i ide do arraySize-1.
Sintaksa pristupa elementima niza je sljedeća:
arrayName(index)
Uzmimo gore navedenu mijariju kao primjer.
Ako trebamo pristupiti 4thelement myarray, onda to možemo učiniti na sljedeći način:
myarray(3);
Ako trebamo dodijeliti 2ndelement myarray na cjelobrojnu varijablu, a zatim to radimo kako slijedi:
int sec_ele = myarray(1);
Imajte na umu da će se u C ++-u, ako pristupimo elementima niza izvan veličine polja, program prevesti u redu, ali rezultati mogu biti neočekivani.
Ako trebamo pristupiti svim elementima niza odjednom, tada se možemo poslužiti iterativnim konstrukcijama C ++ koje će nam omogućiti da prelazimo kroz sve elemente niza i pristupimo im pomoću indeksne varijable.
Od svih konstrukcija, petlja for je idealna za pristup nizovima jer petlja 'for' po definiciji koristi indeksnu varijablu za prolazak kroz niz i također automatske povećanja nakon svake iteracije.
Na primjer,uzeti isti miarray definiran ranije. Korištenje for petlje koda za pristup elementima myarray prikazano je dolje:
for(int i = 0;i<5;i++) { cout<U gornjem kodu, myarray se prelazi pomoću indeksne varijable I od 0 do 5, a elementi se ispisuju nakon svake iteracije.
Izlaz gornjeg koda je:
besplatni pretvarač za youtube u mp4 za mac
1
dva
3
4
5
Osim pristupa elementima niza kao što je gore prikazano, također možemo pristupiti elementima niza i koristiti ih s ostalim operatorima upravo na način na koji koristimo varijable za izvođenje svih različitih operacija.
Razmotrite sljedeći program koji ispisuje zbroj svih elemenata u nizu:
#include include using namespace std; int main() { int myarray(5) = {10, 20,30,40,50}; int sum = 0; for(int i = 0;i<5;i++) { sum += myarray(i); } cout<<'Sum of elements in myarray:
'<U gornjem kodu deklariramo i inicijaliziramo niz nazvan myarray. Također inicijaliziramo varijablu sum na 0, a zatim prelazimo preko myarray-a koristeći for petlju i dodajemo svaki element polja u sum.
Konačni izlaz koji daje program zbroj je svih elemenata u myarrayu i izgledat će na sljedeći način:
Zbroj elemenata u myarrayu:
150
Kao što pokazuje program, elementima niza možemo pristupiti pojedinačno ili odjednom pomoću iterativne petlje, a također izvoditi razne operacije nad elementima niza na isti način kao što izvodimo operacije nad varijablama.
Zaključak
Ovim smo došli do kraja ovog članka o nizovima koji su opisali osnove niza - deklariranje, inicijaliziranje i pristup elementima niza.
U sljedećih nekoliko članaka raspravljat ćemo više o višedimenzionalnim nizovima, pokazivaču niza, nizovima u funkciji itd., Zajedno s ostalim konceptima.
Nadamo se da ste iz ovog informativnog vodiča stekli više znanja o Arrays u C ++.
=> Pročitajte seriju Easy C ++ Training Series.
Preporučena literatura
- Nizovi u STL-u
- Spoji sortiranje u C ++ s primjerima
- Višedimenzionalni nizovi u C ++
- Korištenje nizova s funkcijama na C ++
- VBScript nizovi: Korištenje funkcija DIM, REDIM, Split i Ubound Array
- Python DateTime Vodič s primjerima
- Izreži naredbu u Unixu s primjerima
- Razvrstavanje hrpe u C ++ s primjerima