dereference mutatók
Annak érdekében, hogy (olvassa) írt értéket a memória terület által hivatkozott mutató, használja a művelet Indirekció vagy dereference (*). Ez használ egy kurzor nevét csillaggal előtte:
hosszú kettős num = 10;
hosszú kettős Flag;
hosszú kettős * ptr = &Num;
A gyakorlatban igen széles körben használt úgynevezett null (az ilyen üres), ami arra utalhat, bármilyen típusú objektum. Ahhoz, hogy hozzáférjen az objektum, amely hivatkozik a void mutató, először meg kell okozhat ugyanolyan típusú, mint a típus a tárgy.
Vegyünk egy példát, amely szemlélteti a használata null pointer.
Int fő ()
Int nNum = 9;
Void * ptr;
Hozzáférés tömb elemeit keresztül pointerek
char * Parr = ArrayOfChar;
Visszahivatkozási mutató Parr, akkor érhetik el a tartalmat ArrayOfChar [0]:
char Letter = * Parr;
Mivel a C ++ mutatók és tömbök szorosan összefügg, hogy növeljük vagy csökkentjük az értékét a mutatót a tömb, a programozó képes elérni minden elemét a tömb által megfelelő mutatót módosítással:
// Parr jelzi ArrayOfChar [0] ( 'W')
// Parr jelzi ArrayOfChar [3] ( 'L')
// Parr jelzi ArrayOfChar [4] ( 'D')
char Letter = * Parr; // Letter = 'D';
Így, elvégzése után aritmetikai műveletek Parr mutató fog utalni a tömb indexű elem 4.
Ugyanaz az elem lehet hozzáférni bármely más módon:
Letter = * (ArrayOfChar + 4);
// EkvivalentLetter = ArrayOfChar [4];
Ha értékeket az értéket, egy tömbben másik tömb típusú Array [] = Tovább [] vagy Array = Tovább elfogadhatatlan, mert a fordító nem saját példányát az összes érték az egyik van az értékét egy másik. Ehhez a programozó lépéseket kell tenni (elérésekor elemek index ciklikus feladat leggyakrabban használt).