c arrays with examples
Vad är matriser i C ++? Varför är de användbara?
I denna Komplett C ++ träningsserie , vi tar en titt på Arrays i C ++ i denna handledning.
förprocessordirektiv i c ++ med exempel
Array i C ++ kan enkelt definieras som en datainsamling.
Om en av de applikationer som jag utformar kräver 100 variabler av heltal datatyp. Sedan, med hjälp av variabeldeklarationen, måste jag förklara 100 olika heltalsvariabler. Detta kommer i sin tur att bli besvärligt.
Istället för detta, vad sägs om jag förklarar en enda variabel som innehåller angränsande 100 minnesplatser? Det är här arrays kommer in i bilden.
Vad du kommer att lära dig:
Arrayer I C ++
En array kan definieras som en samling variabler av samma datatyp och har angränsande minnesplatser.
Så om jag definierar en array med 100 heltal kommer dess minnesrepresentation att vara något som visas nedan:
Som visas ovan är 0 ... 99 minnesplatser för denna matris och de är angränsande. De tomma panelerna är de faktiska arrayelementen. De enskilda elementen i en matris kan nås med hjälp av indexet. I ovanstående diagram är arrayens första index 0 medan det sista indexet är 99 (eftersom detta är en array med 100 element) .0 1 2 3 4 5 ……. ... .. 99.
Observera att startindex för en matris alltid är 0. Således för en matris med n-element är matrisens startindex 0 och det sista indexet är n-1.
Förklara en matris
Arraydeklaration i C ++ ser i allmänhet ut som nedan:
datatype arrayName ( arraySize );
Ovanstående deklaration är för en endimensionell matris. Här är datatypen vilken datatyp som är acceptabel i C ++. 'ArrayName' är namnet på arrayen som vi skapar medan arraySize som alltid är innesluten i hakparenteser (()) är antalet element som arrayen kommer att innehålla. ArraySize måste alltid vara ett konstant uttryck.
Till exempel, om jag måste deklarera en matris med namnet myarray med 10 element av typen Integer, kommer deklarationen att se ut :
int myarray (10);
På samma sätt kommer deklarationen för en array 'lön' av typen dubbel med 20 element att se ut som visas nedan:
double salary ( 20 );
Initierar en serie
När en matris har deklarerats kan den initieras med lämpliga värden. Antalet värden som tilldelats matrisen får aldrig överstiga storleken på matrisen som anges i deklarationen.
Så låt oss förklara en matris av storlek 5 och skriv heltal och namnge det som myarray.
int myarray(5);
Vi kan tilldela värdena till arrayelementen en för en enligt följande:
vilka är faserna i sdlc
myarray(0) = 1; myarray(1) = 2; myarray(2) = 3; myarray(3) = 4; myarray(4) = 5;
Istället för att initialisera varje enskilt element kan vi också initialisera en hel array under själva deklarationen som visas nedan:
int myarray(5) = {1, 2, 3, 4, 5};
Som ses ovan görs initialiseringen av arrayelement till värdena med hjälp av lockiga hakparenteser ({}).
Som ett resultat av ovanstående initialisering kommer matrisen att se ut som visas nedan:
Vi kan också initiera matriser utan att ange någon storlek och genom att bara ange elementen.
Detta görs enligt nedan:
int myarray() = {1, 2, 3, 4, 5};
I det här fallet, när storleken på en matris inte specificeras, tilldelar kompilatorn storleken lika med ett antal element som matrisen initialiseras med. I ovanstående fall blir storleken på myarray 5.
Åtkomst till Array Elements
Matriselement kan nås med hjälp av arrayindex. Matrisindex börjar alltid från 0 och går till arraySize-1.
Syntaxen för åtkomst till arrayelement är som följer:
arrayName(index)
Låt oss ta den ovan beskrivna myarrayen som ett exempel.
Om vi behöver komma åt 4thelement i myarray, då kan vi göra det enligt följande:
myarray(3);
Om vi behöver tilldela 2ndelement av myarray till en heltalvariabel, så gör vi det enligt följande:
int sec_ele = myarray(1);
Observera att i C ++, om vi får tillgång till arrayelementen utöver storleken på en array, kommer programmet att kompileras bra men resultaten kan vara oväntade.
Om vi behöver komma åt alla matriselementen samtidigt kan vi använda C ++ iterativa konstruktioner som gör att vi kan korsa alla element i en matris och komma åt dem med hjälp av en indexvariabel.
Av alla konstruktioner är för loop idealisk för åtkomst till matriser, eftersom 'for' -slingan per definition använder en indexvariabel för att gå igenom en sekvens och även automatiska steg efter varje iteration.
Till exempel,ta samma myarray som definierats tidigare. Med hjälp av for loop är koden för åtkomst till myarray-element som visas nedan:
for(int i = 0;i<5;i++) { cout<I ovanstående kod passeras myarray med indexvariabeln I från 0 till 5 och elementen skrivs ut efter varje iteration.
vad är en .swf fil?
Utgången från ovanstående kod är:
1
två
3
4
5
Förutom åtkomst till arrayelementen som visas ovan kan vi också komma åt arrayelementen och använda dem med de andra operatörerna precis på det sätt som vi använder variabler för att utföra alla olika operationer.
Tänk på följande program som skriver ut summan av alla element i en matris:
#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 ovan deklarerar och initierar vi en matris med namnet myarray. Vi initialiserar också den variabla summan till 0, sedan korsar vi myarray med en for-loop och lägger till varje arrayelement till summan.
Den slutliga utdata som ges av programmet är summan av alla element i myarray och kommer att se ut som följer:
Summan av element i myarray:
150
Som visas av programmet kan vi komma åt arrayelementen antingen individuellt eller på en gång med hjälp av en iterativ loop och också utföra en mängd olika operationer på arrayelement på samma sätt som vi utför operationer på variabler.
Slutsats
Med detta kommer vi till slutet av den här artikeln om arrays som beskriver grunderna för en array - deklarera, initialisera och få tillgång till array-element.
I våra närmaste artiklar kommer vi att diskutera mer om flerdimensionella matriser, matrispekare, matriser i funktion etc. tillsammans med de andra begreppen.
Vi hoppas att du måste ha fått mer kunskap om Arrays i C ++ från denna informativa handledning.
=> Läs igenom Easy C ++ Training Series.
Rekommenderad läsning
- Arrays i STL
- Slå ihop sortering i C ++ med exempel
- Flerdimensionella matriser i C ++
- Använda matriser med funktioner i C ++
- VBScript Arrays: Använd DIM-, REDIM-, Split- och Ubound Array-funktioner
- Python DateTime-handledning med exempel
- Klipp kommandot i Unix med exempel
- Heapsortering i C ++ med exempel