C++ Pointer

Merhaba arkadaşlar, bu dersimizde pointerlar ile devam edeceğiz.Pointerlar Türkçesiyle işaretçiler C diline özgü değişkenlerdir.Pointerlar bir değişkenin bellek adresini tutar.Pointer olarak kullanacağımız ifadenin önüne * (yıldız) koyulur.Pointerın tanımlayarak nasıl olduğunu anlayalım.
Pointer genel tanımı;
Tipi *Adı;
Tipi *Adı=&2.değişken;
int *p;
p değişkeni önündeki * ile bir değişkenin adresini tutar.& ise adres operatörüdür.x int bir değişken olsun &x ,x değişkeninin adresini ,*(&x) ise bu adresin işaret ettiği değişkeni gösterir.
int x=23;
int *y=&x;//y bir pointer ve &x adresindeki veriyi tutar.
y=&x //y değişkeni x değişkeninin adresini tutar.
->Bir işaretçiye bir değişken veya bir değişkene bir işaretçi atanamaz.
Bir örnek ile pointerları iyice anlayalım.

İlk olarak int *x bir işaretçi tanımladık.Daha sonra int y olarak bir değişken tanımladık.Ve x değişkenine de y değişkeninin adresini atadık.
x ile &y aynı adresi ifade ettiği gibi *x ile y aynı yeri ifade eder.
İşaretçi sabitleme;
const int *p=&a; //*p pointerı sabit
int *const x=&a; //x sabit
Bir örnekte pointerlardaki sabitliği görelim.

Pointerlarda birden fazla yıldız kullanarak bir adresin içindeki veriyi farklı pointerlarla ifade edilir.Bunu da bir örnekle daha iyi anlayabiliriz.

Bu örnekte *p1,**p2 ve ***p3 aynı değerleri gösterir.Her yıldız aslında kendinden önceki adresi tutarak aynı verileri tutar.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir