Forskjellen mellom array og pointer

De hovedforskjell mellom array og pointer er det en array er en datastruktur som lagrer en samling av elementer av samme datatype mens en peker er en variabel som inneholder adressen til en annen variabel i datamaskinens minne.

Array og peker er to begreper som brukes i programmeringsspråk som C og C ++. Et array er en samling av data som har et fast antall verdier av samme datatype. For eksempel, for å lagre karakterene på 10 studenter, kan programmøren lage en matrise som kan lagre 10 heltall. På den annen side er en peker en variabel som inneholder adressen til en annen variabel. Pekere hjelper deg med å få tilgang til minne og å manipulere minneadresser. 

Nøkkelområder dekket

1. Hva er en Array
     - Definisjon, funksjonalitet
2. Hva er en peker
    - Definisjon, funksjonalitet
3. Forholdet mellom Array og Pointer
    - Oversikt over foreningen
3. Forskjellen mellom array og pointer
    - Sammenligning av nøkkelforskjeller

Nøkkelord

Array, Pointer

Hva er en Array

Et array er en datastruktur som lagrer et fast antall elementer av samme type. Alle elementene i arrayet er i sammenhengende minnesteder.

Figur 1: Array

Anta at du må lagre verdier på 50 heltall. Det er mulig å opprette variabler for hvert heltall, men det er vanskelig og mer tidkrevende. Et array kan brukes til å overvinne dette problemet.

int tall [50];

Ovennevnte utsagn vil tildele et array som heter tall, som kan lagre femti heltall. Et spesifikt element i gruppen kan vurderes ved hjelp av indeksen. Startindeksen er 0. Da det er 50 elementer i gruppen, har det endelige elementet indeksen 49.

tall [1] = 30;

Ovennevnte utsagn vil tildele verdi 30 til 1st indeks av tallet array.

Videre er det mulig å lage arrayer av andre datatyper.

For eksempel, dobbelt gjennomsnittet [10]; vil opprette en gruppe som kalles gjennomsnitt. Det kan lagre 10 dobbelte verdier.

En matrise er enklere å lage og lettere å få tilgang til elementer. På den annen side har en matrise en fast størrelse. Hvis arraystørrelsen er 10, kan den ikke brukes til å lagre 20 elementer. Med andre ord er minnetildelingen for en matrise statisk.  

Hva er en peker

En variabel er en minneplassering for å lagre en verdi. Hvert minnested har en adresse for å identifisere den.

Figur 2: Pointer

En peker er en variabel som lagrer adressen til en annen variabel. Pekeren er erklært før du lagrer en variabel adresse. Stjernen * brukes til å deklarere en peker.

int * ptr;

Ptr er en peker til en heltallvariabel.

dobbelt * ptr1;

Ptr1 er en peker til en dobbel variabel. Se følgende kode.

Figur 3: Program med pekere

Variablen 'a' inneholder verdien 20. Ptr er en peker til et heltall. I linje 8 er ptr tilordnet adressen til variabel a. Nå ptr peker til a. Derfor vil verdien av en pt-verdi pekte på verdien av a.

Hvis det ikke er noen adresse som skal tilordnes, kan pekeren tilordnes en NULL-verdi. Denne typen pekeren kalles nullpekeren.

int * ptr = NULL;

Forholdet mellom Array og Pointer

Se underprogrammet nedenfor.

Figur 4: Arrayer med pekere

Det er en gruppe kalt arr. Den inneholder 5 heltall. Ptr er en peker til et heltall. I linje 8 er arr tildelt ptr. Derfor ptr pekker til det 0de indekselementet i arrayet. Skriver verdien av ptr vil vise verdien på 0th indekselement. Det er 10.

Forskjellen mellom array og pointer

Definisjon

Array er en datastruktur bestående av en samling av elementer hver identifisert av arrayindeksen. En peker er et programmeringsspråkobjekt som lagrer minnesadressen til en annen verdi som er plassert i dataminnet.

Basis

Mens en matrise refererer til et sett med dataelementer, er en peker en variabel som peker på en annen minneplassering.

syntax

Array syntaks - datatype arrayName [datatype];

Pekersyntaks - datatype * variable_name;

bruk

Selv om arrayer kan brukes til å tildele fast størrelse minne (statisk minne), kan pekere brukes til dynamisk minneallokering.

Konklusjon

De to termene array og pekeren er to programmeringskonsepter. Forskjellen mellom array og pointer er at en matrise er en datastruktur som lagrer en samling av elementer av samme datatype mens en peker er en variabel som inneholder adressen til en annen variabel i datamaskinens minne.

Henvisning:

1. "Arrays in C." Www.tutorialspoint.com, Tutorials Point, tilgjengelig her.
2. "Pointers in C." Www.tutorialspoint.com, Tutorials Point, tilgjengelig her.

Bilde Courtesy:

1. "CPT-programmering-array" Av Pluke - Eget arbeid (CC0) via Commons Wikimedia
2. "Pointers" Av Denne filen ble laget av Bruker: SvenTranslation Eget arbeid (CC BY-SA 3.0) via Commons Wikimedia