Hvordan fungerer pekeren til pekeren i C

Hvordan fungerer pekeren til pekeren i C
Pekere er en avgjørende del av C -programmering som gjør det enkelt for deg å manipulere data og minne på en mer fremtredende måte. Imidlertid kan saken komme når du trenger å manipulere en peker selv, og det er her peker til peker vil komme inn i virksomheten.

Denne artikkelen diskuterer arbeidet med pekeren til pekeren i programmeringsspråk.

Før du drar mot hvordan peker til peker fungerer, la oss først diskutere hva som er peker til peker.

Hva er pekeren til pekeren

En peker er en variabel som brukes til å lagre en annen variabel minneadresse. Mens a peker til peker, også referert til som Dobbeltpeker er en peker som brukes til å lagre minneadressen til en annen peker.

Generell syntaks for å bruke pekeren til pekeren i C

Følgende er syntaksen for å bruke en peker til peker I C -programmering.

data_type ** variabel_navn

De peker til peker Variabel må defineres ved å legge to stjerner til navnet. For eksempel erklærer følgende erklæring en peker til pekeren til int -datatype.

int ** var;

Hvordan fungerer pekeren til pekeren i C

EN peker til peker Handler på samme måte som en vanlig peker, bortsett fra at den endrer den faktiske verdien som er forbundet med pekeren som den peker. For å si det på en annen måte, er minneadressen som holdes i en vanlig peker i stand til å bli endret. La oss vurdere et enkelt eksempel:

int n = 10;
int *pPtr1 = & n;
int ** pPTR2 = &pptr1;

I koden ovenfor har vi en INT -variabel som lagrer en heltallverdi. Vi har også en peker som heter “PPTR1” som lagrer minneadressen til variabel n. Etter det, “PPTR2” brukes som lagrer pekerens minneadresse PPTR1.

Nå, hvis du vil få tilgang til verdiene til n, du trenger bare å dereferanse pekeren to ganger. I den første dureferansen vil du få minneadressen til “PPTR1”, Mens du er i det andre, vil du få verdien av n. Nå kan du få verdien ved å bruke “Printf ()” funksjon.

Her er en komplett kode for å bruke pekeren til pekeren i C -programmering.

#inkludere
int main ()
int n = 10;
int *pPtr1 = & n;
int ** pPTR2 = &pptr1;
printf ("Verdien av n ved bruk av PPTR2: %d \ n", ** PPTR2);
retur 0;

Produksjon

Vi kan også tildele minne for en pekervariabel i en egen funksjon og deretter bruke den pekeren i anropsfunksjonen. Det gitte eksemplet viser hvordan du gjør dette.

#inkludere
#inkludere
#inkludere
void memory_allocation (char ** my_ptr)

* my_ptr = (char *) malloc (10 * sizeof (char));

int main ()

char *w;
Memory_allocation (& w);
Strcpy (W, "Linuxhint");
printf ("%s \ n", w);
gratis (w);
retur 0;

I programmet ovenfor, “Memory_allocation” funksjon tildelte minnet til PTR_1. De PTR_1 fungerer som en dobbel peker og lagret en streng som heter “Linuxhint” som er skrevet ut på skjermen.

Produksjon

Konklusjon

De peker til peker er et nyttig konsept på programmeringsspråk som lar deg indirekte få tilgang til en variabel verdi via flere pekerlag. Med hjelp av peker til peker, Du kan manipulere en peker av seg selv. Ovennevnte retningslinjer hjelper deg å bruke peker til peker i C -programmering siden det også inkluderer noen få grunnleggende eksempler som hjelper til med å forstå det grunnleggende konseptet bak peker til peker.