Pointers er nok det sværeste koncept, du vil støde på i en begyndelse C klasse. Forståelse C pointers er meget lettere , hvis du har en klar idé om , hvordan computere lagre oplysninger - og en klar idé om, hvordan adresserne på lagerpladser vedrører de data, der er gemt i disse hukommelsespladser . Dette er fordi pointers er alt om adresser. Forstå hvordan adressering værker gør det nemmere at forstå, hvordan pegepinde fungerer . Instruktioner
1
Lær først hvordan adresse , type og værdier arbejder sammen i computerens hukommelse . Hver variabel, du bruger i din C-program vil have en type og en adresse i hukommelsen. Antag X er en dobbelt ord ( type) , der fylder hukommelsespladser 1000 og 1001 . Adressen på X ( skriftlig & X) er 1000 , men systemet ved, at X er en dobbelt ord , så værdien af X ( skriftlig X) vil være i 1000 og 1001 . X er navnet på en kasse , der på nuværende tidspunkt ( for eksempel) 15 , og dette kan ændre . Adressen på X er 1000, og det vil sandsynligvis ikke ændre sig.
2
Lær, hvad det betyder, når lagerpladser indeholde adresserne på andre lagerpladser . C compiler ved, hvornår en variabel er en pointer , og hvilken type emner den peger på . For eksempel, " double * P; " er den erklæring, erklærer P til at være en pegepind . Dette betyder, at symbolet P er forbundet med en hukommelse ( sige 2000) , og at systemet ved, at tingene i placering 2000 ( henvisninger er kun ét ord lang) er adresser. Nu kan du sige " P = &X; " , og resultaterne vil være at sætte 1000 ( adressen på X) i computerens hukommelse placering 2000. Hvis du nu evalueret * P ( hvad P peger på ) , ville du få 15 , fordi P- point til 15 . P indeholder adressen på X, men den peger på indholdet af X.
3
Lær hvert nyt koncept grundigt, før de går videre til den næste. Hver ny anvendelse af henvisninger vil være " syntaktisk sukker " for at gøre sproget lettere at bruge . Hvis du har et klart koncept om, hvordan adresser, typer og hukommelse arbejder sammen , har du et solidt fundament for at forstå den syntaktiske sukker.