Pekere i ca

Pekere i ca
Pekere er det viktigste emnet på programmeringsspråket C. I minnetildeling er hver blokk der data lagres i stand til å lagre 1 byte av informasjon. Pekeren er variabelen som gjør at vi kan lagre adressen til variablene vi ønsker å peke. Verdien av pekere i seg selv kan endres til å peke på forskjellige steder i minnet, som er kraftig når vi peker på en matrise fordi vi vet at de indre matriseelementene er ved siden av hverandre. Så vi kan flytte pekeren fra ett element til neste element ved bare å bevege oss i minnet.

Hver gang en variabel er deklarert, blir minnestedet automatisk tildelt dem som standard, som brukes til å holde verdien som er tilordnet den. Plasseringen som er tilordnet variabelen har en forhåndsdefinert adresse som bare kan nås ved å bruke pekerne.

Syntaks
$ type *variabel-navn;

Syntaksen for pekerdeklarasjonen er litt annerledes enn å erklære en variabel, mens vi bruker pekere, har vi begge evner til å få tilgang til adressen så vel som verdien på variabelen. I pekerklæringen brukes nøkkelordet “*” som indikerer at vi peker på variabelen “XYZ”. I den gitte syntaks er typen datatypen til pekervariabelen som vi skal definere, og "variabelen navn" er variabelen som skal pekes.

La oss anta at vi opprettet en variabel "VAR" hvis verdi ligger i “3E97B57C” -adressen.

Int var = 2;
Int *ptr;
PTR =&var;

Nå, som definerer en pekervariabel “PTR”, er pekeren definert ved hjelp av stjerne “*” -operatøren. Det tekniske ordet som brukes til denne operatøren er derferanser. For å peke på adressen til variabelen som vi må få tilgang til, vil vi bruke Ampersand “&” nøkkelord.

Som vist i følgende figur, holder pekeren PTR adressen til variabelen “var”.

Eksempel 1:
I dette eksemplet implementerer vi pekeren vår som vi vil vise adressen til variabelen så vel som variabel verdi. For å implementere pekerne, vil vi først inkludere overskriftsfilen vår "stdio.h ”og vet at“ stdio.H ”er en overskriftsfil som gjør det mulig for oss å utføre input-output-operasjonene i C. Nå, flytter vi til vår viktigste () -funksjon, bruker vi pekerne våre.

#inkludere
Int main ()

int var = 10;
int *ptr;
PTR =&var;
printf (“Adresse til variabel var er: %x \ n”, PTR);
printf (“Verdien av variabel var er: %x \ n”, *ptr);
Retur (0):

I hovedfunksjonen () vil vi først erklære en variabel som heter "var" og tildele den en verdi på "10". Nå har "var" en verdi på "10". Deretter vil vi erklære en peker av heltallstype og navngi den “PTR”. For å tilordne adressen til variabel "var" til pekeren, vil vi bruke ampersand "&". Ampersand “&” kalles referanseoperatøren som brukes til å lage pekeren eller adressen til informasjonen som er lagret på et minneplassering.

Nå er pekeren ansvarlig for å holde adressen til variabelen “var”. I printf -setningen betegner %d desimalverdier og %x representerer at vi ønsker at tallene skal komme ut i heksadesimal, noe som er litt lettere å lese. Vi skriver ut adressen til variabelen som er “3E97B57C”. I den andre utskriftserklæringen skriver vi ut verdien til variabel “VAR” ved å bruke pekeren “PTR”. Som vi kan se i den første uttalelsen, kaller vi ganske enkelt “PTR” uten stjerne “*” som gjør at vi kan skrive ut adressen til variabelen.

Som vi diskuterte i innledningen, holder pekerne adressen til informasjonen som er lagret i minnet. På den annen side, når vi viser verdien av variabelen som er lagret i vårt minne, kaller vi pekeren ved å bruke stjerne “*”.

Som vist på følgende skjermbilde, kan vi se utdataene fra begge utskriftsuttalelsene. Den første skriver ut adressen, mens den andre skriver ut verdien til en variabel.

Eksempel 2:
I følgende kode vil vi endre verdien av en variabel ved hjelp av pekere. Som vi vet er pekere den viktigste delen av C -språket. Ved å bruke dem kan vi redusere tiden og kompleksiteten til kode og lar oss håndtere ubegrensede data.

#inkludere
int main ()

int myvar = 23;
int *myptr;
myptr = &myvar;
printf ("adresse til myvar = %p \ n", myptr);
printf ("Verdien av myvar = %d \ n", *myptr);
*myptr = 10;
printf ("Oppdatert verdi av Myvar ved bruk av peker er %d", *MyPTR);

Etter å ha inkludert overskriftsfilene, vil vi flytte inn i hovedfunksjonen vår der vi initialiserer variabelen som heter “Myvar” som er ansvarlig for å holde verdien “23”. Og nå peker initialisering av en peker av type heltall som er "MyPTR" på adressen til variabelen som vi erklærer i den øvre linjen. Nå, i vårt neste trinn, tildeler vi adressen til variabelen “Myvar” som er lagret i minnet med verdien “23”. For å gjøre det, bruker vi nøkkelordet Ampersand “&” som vi diskuterte i forrige eksempel på at Ampersand brukes til å lage pekeren eller adressen til variabelen som er lagret i et minne.

Etter å ha tilordnet adressen til pekeren, kaller vi PRINTF () -klæringen for å skrive ut MyVar -verdien så vel som adressen. Nå, for å oppdatere verdien på den spesifiserte adressen til variabelen, bruker vi en peker for å oppdatere verdien. For å gjøre det, kaller vi pekerenadressen ved å bruke Asterisk “*” pekernavn som er “MyPTR”. Så tilordne den verdien som er "10" i vårt tilfelle. Deretter skriver vi ut verdien ved å sende den oppdaterte pekeren til printf () -klæringen.

Som vist i følgende utdrag, får adressen til variabelen tilgang til en peker, og verdien lagres på den adressen. Endelig viser vi den oppdaterte verdien av den variabelen.

Konklusjon

I denne guiden diskuterte vi kort om pekerne på C -språket og metodene for å implementere dem. Vi prøvde vårt beste for å forklare implementeringen av pekere og hvordan du bruker dem effektivt på C -språk ved å definere dem ved hjelp av eksempler. Pointer er nyttig for å redusere størrelsen på koden og brukes også til å forbedre ytelsen til enorme programmer. Du kan også bruke pekere til å utføre de forskjellige oppgavene som aritmetiske operasjoner, oppdatering av data osv.