De huvudskillnad mellan matris och pekare är det en array är en datastruktur som lagrar en samling av element av samma datatyp medan en pekare är en variabel som innehåller adressen till en annan variabel i datorns minne.
Array och pekare är två begrepp som används i programmeringsspråk som C och C ++. En matris är en samling data som innehåller ett fast antal värden av samma datatyp. Till exempel, för att lagra betyg på 10 studenter, kan programmeraren skapa en matris som kan lagra 10 heltal. Å andra sidan är en pekare en variabel som innehåller adressen till en annan variabel. Pekare hjälper till att komma åt minne och för att manipulera minnesadresser.
1. Vad är en Array
- Definition, Funktionalitet
2. Vad är en pekare
- Definition, Funktionalitet
3. Förhållandet mellan Array och Pointer
- Föreningens sammanfattning
3. Skillnad mellan Array och Pointer
- Jämförelse av viktiga skillnader
Array, Pointer
En array är en datastruktur som lagrar ett fast antal element av samma typ. Alla element i arrayen finns i angränsande minnesplatser.
Figur 1: Array
Antag att du måste lagra värden på 50 heltal. Det är möjligt att skapa variabler för varje heltal men det är svårt och mer tidskrävande. En array kan användas för att lösa problemet.
int tal [50];
Ovanstående uttalande kommer att ange ett array som heter nummer, som kan lagra femti heltal. Ett specifikt element i matrisen kan bedömas med hjälp av indexet. Startindexet är 0. Eftersom det finns 50 element i matrisen har det sista elementet index 49.
siffror [1] = 30;
Ovanstående uttalande kommer att tilldela värdet 30 till 1st index för talmatrisen.
Dessutom är det möjligt att skapa skivor av andra datatyper.
Till exempel dubbelmedlet [10]; kommer att skapa en array som kallas genomsnittet. Det kan lagra 10 dubbelvärden.
En array är lättare att skapa och lättare att komma åt element. Å andra sidan har en matris en fast storlek. Om arraystorleken är 10, kan den inte användas för att lagra 20 element. Med andra ord är minnetilldelningen för en array statisk.
En variabel är en minnesplats för att lagra ett värde. Varje minnesplats har en adress för att identifiera den.
Figur 2: Pekare
En pekare är en variabel som lagrar adressen till en annan variabel. Pekaren deklareras innan du lagrar en variabel adress. Asterisken * används för att deklarera en pekare.
int * ptr;
Ptr är en pekare till en heltal variabel.
dubbel * ptr1;
Ptr1 är en pekare till en dubbelvariabel. Se följande kod.
Figur 3: Program med pekare
Variabeln 'a' innehåller värdet 20. Ptr är en pekare till ett heltal. I rad 8 tilldelas ptr adressen till variabel a. Nu ptr pekar på a. Därför kommer utskrift av värdet pt ptr att ge värdet av a.
Om det inte finns någon adress att tilldelas kan pekaren tilldelas ett NULL-värde. Denna typ av pekare kallas nollpekaren.
int * ptr = NULL;
Se nedan programmet.
Figur 4: Arrays med pekare
Det finns en array som heter arr. Den innehåller 5 heltal. Ptren är en pekare till ett heltal. I linje 8 är ar tilldelad ptr. Därför pekar ptr till det 0: e indexelementet i matrisen. Om du trycker på värdet på ptr visas värdet 0th indexelement. Det är 10.
Array är en datastruktur som består av en samling av element som var och en identifierad av matrisindexet. En pekare är ett programmeringsspråkobjekt som lagrar minnesadressen till ett annat värde som finns i datorns minne.
Medan en array avser en uppsättning dataelement, är en pekare en variabel som pekar på någon annan minnesplats.
Array syntax - datatyp arrayName [datatyp];
Pointer syntax - datatyp * variable_name;
Även om arrayer kan användas för att tilldela minnesstorlek (statiskt minne), kan pekare användas för dynamisk minnetilldelning.
De två terminerna array och pekaren är två programmeringskoncept. Skillnaden mellan array och pekare är att en matris är en datastruktur som lagrar en samling av element av samma datatyp medan en pekare är en variabel som innehåller adressen till en annan variabel i datorminnet.
1. "Arrays in C." Www.tutorialspoint.com, Tutorials Point, Tillgänglig här.
2. "Pointers in C." Www.tutorialspoint.com, Tutorials Point, Tillgänglig här.
1. "CPT-programmering-array" Av Pluke - Egent arbete (CC0) via Commons Wikimedia
2. "Pointers" Av Den här filen gjordes av User: SvenTranslation Own work (CC BY-SA 3.0) via Wikimedia Commons