Pekere er trolig den mest vanskelig begrep du vil støte på i en begynnelse C -klasse . Forstå C pekere er mye lettere hvis du har en klar idé om hvordan datamaskiner lagrer informasjon - og en klar idé om hvordan de adressene minneplasser forholder seg til de data som er lagret i disse minnesteder. Dette er fordi pekere er alle om adresser. Forstå hvordan adressering fungerer gjør det lettere å forstå hvordan pekere fungerer. Instruksjoner
en
Lær først hvordan adresse, type og verdier arbeide sammen i datamaskinens minne . Hver variabel du bruker i din C programmet vil ha en type og en adresse i minnet . Anta X er en dobbel ord (typen ) som tar opp minneplasser 1000 og 1001 . Adressen til X (skriftlig og X ) er 1000 , men systemet vet at X er en dobbel ord , slik at verdien av X ( skrevet X ) vil være i 1000 og 1001 . X er navnet på en boks som i dag innehar (for eksempel) 15 , og dette kan endre seg. Adressen til X er 1000 , og dette vil sannsynligvis ikke endre seg.
2
Lær hva det betyr når minneplasser inneholder adressene til andre minnesteder. C- kompilator vet når en variabel er en peker og hva slags elementer det peker på . For eksempel , "double * P; " er uttalelsen som erklærer P for å være en peker . Dette betyr at symbolet P er forbundet med en minnelokasjon ( si 2000 ), og at systemet vet at ting i stedet 2000 (pekere er bare ett ord lang ) er adresser . Nå kan du si "P = &X; " og resultatene ville være å sette 1000 ( adressen X ) i datamaskinens minne plassering 2000 . Hvis du nå evaluert * P (hva P peker til) , vil du få 15 , fordi P poeng til 15 . P inneholder adressen til X , men den peker på innholdet i X.
3
Lær hvert nytt konsept grundig før du går videre til neste . Hver ny bruk av pekere vil være " syntetisk sukker " for å gjøre språket enklere å bruke. Hvis du har et klart begrep om hvordan adresser, typer og minne arbeide sammen , har du solid fundament for å forstå syntaktiske sukker.