Skip to main content

Hva er en rekke pekere?

En rekke pekere er en standard array -datatype som inneholder en minnesekvens adressert til datatyper i motsetning til å holde andre skalartyper som heltall eller flytende punkttall.Ved å bruke en rekke pekere, kan et program ha en rekke nesten hvilken som helst datatype, datastruktur, klasse eller til og med funksjon.Effektiv sortering av en rekke pekere er også mulig, slik at adressene om ønskelig kan justeres i henhold til deres fysiske beliggenhet i dataminne.Noen av komplikasjonene ved bruk av en rekke pekere er at dataene lett kan bli ødelagt og at typen data som blir pekt på må styres internt for å forhindre at minnet overløpsproblemer.

Ikke alle programmeringsspråk tillater en rekke pekere somKonseptet ble opprinnelig unnfanget.Språk på høyt nivå som automatiserer minnestyring bruker ikke pekere på samme måte som språk på lavere nivå, selv om det teknisk sett er en rekke klasseobjekter på et høyt nivå, er objektorientert språk en rekke pekere;Likevel kan de ikke brukes eller manipuleres på samme måte.På et språk på lavt nivå vil matrisen faktisk inneholde en heltallverdi som er den direkte adressen til pekeren i minneskanten.På de fleste språk på høyt nivå er ikke denne funksjonaliteten mulig, selv om det finnes alternative paradigmer.

Et av aspektene som gjør en rekke pekere verdifulle som et programmeringsverktøy er at pekerne kan referere til enhver type data tilgjengelig.Pekeren er en datatype i seg selv, selv om dets eneste formål er å peke mot en annen datatype.Dette betyr at en rekke pekere faktisk kan inneholde en rekke datatyper i samme matrise, selv om programmet må ha en mekanisme for å holde rede på hva hver peker refererer til.

Et kraftig aspekt av pekere er at de faktisk kanpeker på å kompilere programkode i minnet.Dette lar en matrise peke på funksjoner, ikke bare data.En rekke funksjoner kan tillate dynamisk numerisk referanse av kode.Dette kan være nyttig når du programmerer en språktolk eller annen type programvare som må kalle visse funksjoner basert på uforutsigbare innspill uten behov for store betingede utsagn som bryterblokker.

Noen problemer presentert av en rekke pekerdata er mulighetenå miste adressen, forhindre at minnet blir frigjort senere, og sjansen for at en adresse kan bli ødelagt gjennom en utilsiktet operasjon som tillegg.Forsøk på å få tilgang til en feil adresse kan føre til at ødelagte data blir lest, eller i ekstreme tilfeller som en mislykket initialisering, en segmenteringsfeil som kan føre til at programmet avsluttes uventet.Forsiktig programmering kan bidra til å dempe muligheten for disse hendelsene.