c arrays with examples
Hva er matriser i C ++? Hvorfor er de nyttige?
I dette Komplett C ++ treningsserie , vi tar en titt på Arrays i C ++ i denne opplæringen.
Array i C ++ kan enkelt defineres som en samling av data.
Hvis et av applikasjonene jeg designer, krever 100 variabler av datatypen for heltall. Deretter, ved å bruke variabelerklæringen, må jeg erklære 100 forskjellige heltallvariabler. Dette vil i sin tur virkelig være tungvint.
I stedet for dette, hva med om jeg erklærer en enkelt variabel som inneholder sammenhengende 100 minneplasser? Det er her arrays kommer inn i bildet.
Hva du vil lære:
Arrays I C ++
En matrise kan defineres som en samling variabler av samme datatype og har sammenhengende minneplasseringer.
Så hvis jeg definerer en matrise på 100 heltall, vil minnets representasjon være noe som vist nedenfor:
Som vist ovenfor er 0… 99 minneplasser for denne matrisen, og de er sammenhengende. De tomme panelene er de faktiske matriseelementene. De enkelte elementene i en matrise kan nås ved hjelp av indeksen. I diagrammet ovenfor er den første indeksen til matrisen 0 mens den siste indeksen er 99 (siden dette er en matrise med 100 elementer) .0 1 2 3 4 5 ……. ... .. 99.
Vær oppmerksom på at startindeksen til en matrise alltid er 0. For en matrise med n elementer vil startindeksen til matrisen være 0 og den siste indeksen vil være n-1.
kvalitetskontroll intervju spørsmål og svar pdf
Erklære en serie
Matrixerklæring i C ++ ser generelt ut som vist nedenfor:
datatype arrayName ( arraySize );
Ovennevnte erklæring er for en endimensjonal matrise. Her er datatypen hvilken som helst datatype som er akseptabel i C ++. ‘ArrayName’ er navnet på matrisen vi lager mens arraySize som alltid er omsluttet av hakeparenteser (()) er antall elementer som arrayet vil ha. ArraySize må alltid være et konstant uttrykk.
For eksempel, hvis jeg må erklære en matrise som heter myarray med 10 elementer av typen Integer, vil erklæringen se ut :
int myarray (10);
Tilsvarende vil erklæringen for en array ‘lønn’ av typen dobbelt med 20 elementer se ut som vist nedenfor:
double salary ( 20 );
Initialisere en serie
Når en matrise er deklarert, kan den initialiseres med passende verdier. Antall verdier som er tilordnet matrisen skal aldri overstige størrelsen på matrisen som er spesifisert i erklæringen.
Så la oss erklære en matrise av størrelse 5 og skrive heltall og gi den navnet myarray.
int myarray(5);
Vi kan tilordne verdiene til matriseelementene en etter en som følger:
myarray(0) = 1; myarray(1) = 2; myarray(2) = 3; myarray(3) = 4; myarray(4) = 5;
I stedet for å initialisere hvert enkelt element, kan vi også initialisere en hel matrise under selve erklæringen som vist nedenfor:
int myarray(5) = {1, 2, 3, 4, 5};
Som sett ovenfor gjøres initialiseringen av matriseelementene til verdiene ved hjelp av krøllete bukseseler ({}).
Som et resultat av initialiseringen ovenfor, vil matrisen se ut som vist nedenfor:
Vi kan også initialisere matriser uten å spesifisere noen størrelse og bare ved å spesifisere elementene.
Dette gjøres som vist nedenfor:
int myarray() = {1, 2, 3, 4, 5};
I dette tilfellet, når størrelsen på en matrise ikke er spesifisert, tildeler kompilatoren størrelsen lik et antall elementer som matrisen initialiseres med. I ovennevnte tilfelle vil størrelsen på myarray være 5.
Få tilgang til Array Elements
Du kan få tilgang til matriseelementer ved hjelp av matriseindeksen. Matriseindeks starter alltid fra 0 og går til arraySize-1.
Syntaksen for å få tilgang til matriseelementer er som følger:
arrayName(index)
La oss ta myarray erklært ovenfor som et eksempel.
Hvis vi trenger tilgang til 4thelement i myarray, så kan vi gjøre det som følger:
avslappende spørsmål om nettjenester som tester intervjuer
myarray(3);
Hvis vi trenger å tildele 2ndelement av myarray til en heltallvariabel, så gjør vi det som følger:
int sec_ele = myarray(1);
Merk at hvis vi får tilgang til matriseelementene utover størrelsen på en matrise i C ++, vil programmet kompilere fint, men resultatene kan være uventede.
Hvis vi trenger tilgang til alle matriseelementene samtidig, kan vi bruke C ++ iterative konstruksjoner som lar oss krysse gjennom alle elementene i en matrise og få tilgang til dem ved hjelp av en indeksvariabel.
Ut av alle konstruksjonene er for loop ideell for å få tilgang til arrays, da ‘for’ loop per definisjon bruker en indeksvariabel for å krysse gjennom en sekvens og også automatiske trinn etter hver iterasjon.
For eksempel,ta den samme myarray som definert tidligere. Ved å bruke for loop er koden for tilgang til myarray-elementer som vist nedenfor:
for(int i = 0;i<5;i++) { cout<I koden ovenfor krysses myarray ved hjelp av indeksvariabelen I fra 0 til 5, og elementene skrives ut etter hver iterasjon.
hvordan du åpner .swf filer på windows
Resultatet av koden ovenfor er:
en
to
3
4
5
Bortsett fra å få tilgang til matriseelementene som vist ovenfor, kan vi også få tilgang til matriseelementene og bruke dem med de andre operatørene akkurat slik vi bruker variabler til å utføre alle forskjellige operasjoner.
Tenk på følgende program som skriver ut summen av alle elementene i en matrise:
#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:
'<I koden ovenfor erklærer og initialiserer vi en matrise som heter myarray. Vi initialiserer også den variable summen til 0, deretter krysser vi myarray ved hjelp av en for loop og legger til hvert arrayelement til summen.
Den endelige produksjonen gitt av programmet er summen av alle elementene i myarray og vil se slik ut:
Summen av elementer i myarray:
150
Som vist av programmet, kan vi få tilgang til matriseelementene enten enkeltvis eller samtidig ved hjelp av en iterativ sløyfe og også utføre en rekke operasjoner på matriseelementer på samme måte som vi utfører operasjoner på variabler.
Konklusjon
Med dette kommer vi til slutten av denne artikkelen om matriser som beskriver det grunnleggende i en matrise - deklarere, initialisere og få tilgang til matriseelementer.
I de neste få artiklene vil vi diskutere mer om flerdimensjonale matriser, arraypeker, matriser i funksjon, etc. sammen med de andre konseptene.
Vi håper du må ha fått mer kunnskap om Arrays i C ++ fra denne informative opplæringen.
=> Les gjennom Easy C ++ Training Series.
Anbefalt lesing
- Arrays I STL
- Flett sortering i C ++ med eksempler
- Flerdimensjonale matriser i C ++
- Bruke matriser med funksjoner i C ++
- VBScript Arrays: Bruk av DIM-, REDIM-, Split- og Ubound Array-funksjoner
- Python DateTime Tutorial med eksempler
- Klipp kommandoen i Unix med eksempler
- Haugsortering i C ++ med eksempler