Rekke pekere C ++

Rekke pekere C ++
Array inneholder listen over elementer i henhold til størrelsen vi gir på tidspunktet for oppretting av array. Mens pekere i C ++ er variablene som har adressene til andre variabler. Disse pekerne har adressen til en enkelt variabel og kan lagre adressen til matrisens celler. Både matriser og pekere er veldig nært beslektet med hverandre som i C ++, blir Array's navn betraktet som en peker fordi den består av adressen til elementet. Derfor inneholder Array elementene, og pekere inneholder adresse til variabler. Så pekerarrayen eller 'Array of Pointer' skildrer en matrise med adressen til elementene som er til stede i matrisen. Dette emnet vil inneholde fenomenet med rekke pekere i C++.

Syntaks

I C ++, hvis vi må erklære en rekke pekere, oppretter vi en matrise som inneholder adressen til elementene som er til stede i den som peker på noen adresseverdier.

# type *pekernavn [array_size];

I følge syntaksen, hvis du er villig til å opprette en peker -matrise, definerer vi typen array peker. Etter det er navnet på pekerarrayen erklært. Som du kan se fra syntaksen at “*” brukes med navnet på en peker i C++. Etter å ha navngitt matrisen, erklæres størrelsen på matrisen som viser hvor mange elementer som vil være til stede i matrisen.

# Int *newp [5];

Arbeid av pekere matrise i C++

Pekerverdien peker på adressen til verdiene som er til stede inne i matrisen. Hvis du er villig til å få tilgang til verdiene, kan vi få tilgang til hver verdi ved å bruke adressen deres fordi den bare peker på den spesifikke adressen. Bruken av pekere gjør funksjonalitetsoperasjonene mer effektive og påvirker også ytelsesnivået. Nå vil vi se at hvordan du skal erklære en pekerarray.

Som vi har brukt en prøve erklæring om pekerarray ovenfor.

# Int *newp [5];

I denne linjen har vi erklært en rekke pekere som har 5 elementer. Denne matrisen vil inneholde adressen til verdiene i den. Adressen er plasseringen av elementet der matrisen er lagret inne i minnet. Denne minneadressen vender alltid poenget til elementet som er lagret på det stedet.

Opprettelse av utvalg av pekere i C++

Det er noen trinn for å lage en rekke pekere i C++

Først lager vi en matrise som har elementer. Anta at vi har 5 elementer.

# Int newArray [5] = 1,2,3,4,5;

Etter det oppretter vi en peker -matrise som lagrer adressen til elementene i matrisen.

# Int "newp [5];

Hvis du vil få adressen til elementer i matrisen, bruk '&' -operatøren, dette vil gi oss adressen til verdiene i minnet.

# Newp [1] = & newp [1];

Etter det lagres adressen til elementer i matriserene ved å bruke sløyfen.

Nå kan vi få tilgang til elementene i matrisen med pekerne; Det vil gi samme verdi. Nå vil vi bruke noen elementære eksempler her som vil hjelpe deg i forståelsesbegrepet.

Eksempel 1

I dette eksemplet har vi ganske enkelt vist verdiene i matrisen. Men denne gangen gjøres det ikke ved å vise verdiene gjennom det indre nummeret, men ved å bruke pekere. Så første trinn i hovedprogrammet lager vi dynamisk spekteret av størrelse 5.

# Int*p = ny int [5];

Etter det, som vi har beskrevet før i emnets del "Opprettelse av en rekke pekere i C ++", initialiseres matrisen med tallene. Vi vil bruke til Loop for å legge inn verdiene i de respektive indeksene. Dette gjøres gjennom pekerne. '10' er en konstant her som brukes til å multiplisere verdien med den kommende; Dette er en smart tilnærming til å tilordne verdiene.

# 2 [P]

Nå er verdien av P 1, så etter å ha flere.

For eksempel, når sløyfen itererer for første gang, vil verdien av "jeg" være '0', så når den i parentesen vil bli lagt til med 1, vil den bli 1, og etter å ha multipliserer med konstanten, den Resultatet vil være lik selve konstanten. For den andre indeksen, i neste iterasjon, når verdien av i er '1', etter tillegg med 1, vil den være 2, så når den multipliseres med 10, blir den 20. Og så så videre i hver iterasjon til verdien som skal legges inn er 50. Når det gjelder å vise verdiene gjennom pekere, har vi brukt forskjellige teknikker; Disse vil sikkert være gunstige for deg i å forstå perspektiv. First Output som leverer uttalelse inneholder:

# *s

Som vi vet at dette '*' -symbolet viser adressen, bør en ting huskes: Når vi bruker en peker for å vise verdien uten å bruke indeksen, tildeler den automatisk den første verdien som standard, resultatet vil være 10. Den neste er:

# *P + 1

Det vil ganske enkelt legge til standardverdien med en, så svaret er 11. Beveger seg mot neste verdi,

# *(P + 1)

Nå denne gangen vil vi snakke om indeksen, men ikke adressen som "*" er ikke med P. Så det betegner til '0', denne 0 vil bli lagt til med 1, og skjemaer *(1), så på 1 stilling er den 20, så den vises.

Tilsvarende vil andre resultater vises. Til slutt avsluttes pekeren da vi også har tatt resultatet av den økte verdien.

For den resulterende verdien, gå til Terminalen til Linux og bruk G ++ -kompilatoren til å kompilere og utføre koden.

$ G ++ -O Array Array.c
$./Array

Eksempel 2

Dette eksemplet angår visning av adresser ved hjelp av matriser og pekere for å vise forskjellen mellom dem. For dette formålet, i hovedprogrammet, erklærer vi en matrise som har en flytdatatype. Flytepekervariabelen er erklært.

# *PTR;

Nå ved hjelp av denne pekeren, vil vi kunne vise adressen. Men først, la oss vise adressen til elementene ved å bruke en matrise. Dette gjøres gjennom en for loop. Dette er den enkle og generiske måten å vise matriserens innhold gjennom indeksnummeret.

# Ptr = arr;

Ved hjelp av pekernotasjonene vil vi vise adressen gjennom pekerne. Igjen brukes en for loop til å vise adressen gjennom pekeren.

Bruk igjen G ++ -kompilatoren til å kompilere og utføre deretter koden i Linux -terminalen for å vise de resulterende verdiene.

Når du utfører koden, vil du se at svaret for begge metodene er det samme; Enten gjennom en matrise eller gjennom pekerne oppnås det samme resultatet.

Konklusjon

En rekke pekere brukes i C ++ i Ubuntu Linux -operativsystemet for å utdype å hente data gjennom adressen og matriser. Denne artikkelen handlet om en rekke pekere i C++. Vi har utdypet syntaksen og noen få eksempler relatert til pekere. Disse eksemplene kan implementeres på hvilken som helst kompilator i henhold til brukerens valg.