Pekare är förmodligen den svåraste konceptet kommer du att stöta på en början C class . Förstå C pekare är mycket lättare om du har en klar uppfattning om hur datorer lagrar information - och en klar uppfattning om hur de adresser minnesplatser relaterar till data som lagras i dessa minnesplatser . Detta beror pekare handlar om adresser . Förstå hur adressering fungerar gör det lättare att förstå hur pekare fungerar . Instruktioner
1
först lära adress , typ och värderingar arbetar tillsammans i datorns minne . Varje variabel som du använder i din C-programmet kommer att ha en typ och en adress i minnet . Antag X är en dubbel ord ( typ ) som tar upp minnesplatser 1000 och 1001 . Adressen till X ( skriven & X ) 1000 , men systemet vet att X är en dubbel ord , så värdet av X ( skriven X ) kommer att vara i 1000 och 1001 . X är namnet på en låda som rymmer för närvarande ( till exempel ) 15 , och detta kan komma att ändras . Adressen till X är 1000 , och detta förmodligen inte kommer att förändras .
2
Lär dig vad det betyder när minnesplatser innehåller adresserna till andra minnesplatser . Den C- kompilatorn vet när en variabel är en pekare och vilken typ av objekt den pekar på . Till exempel, " dubbel * P; " är uttalandet att förklarar P för att vara en pekare . Detta innebär att symbolen P är associerad med en minnesplats (säg 2000 ) och att systemet vet att saker i plats 2000 ( pekare är bara ett ord lång) är adresser. Nu kan du säga " P = &X; " och resultatet skulle vara att sätta 1000 (adressen X ) i datorns minne plats 2000. Om du nu utvärderat * P ( vad P pekar på ) , skulle du få 15 , eftersom P punkter till 15 . P innehåller adressen för X , men det pekar på innehållet i X.
3
Lär varje nytt koncept ordentligt innan du går vidare till nästa . Varje ny användning av pekare blir " syntaktiskt socker " för att göra språket enklare att använda . Om du har en klar uppfattning om hur adresser, typer och minnet arbetar tillsammans , har du den fasta grund som behövs för att förstå den syntaktiska socker .