c_ders_notlari
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Pointerlar (İşaretçiler) ve Referans (Adres) operatörleri<br />
24.02.2015 Salı<br />
Bilgisayar hafızasında bir bölgeyi isimlendirip orada belirli<br />
tipte bilgi depolanmasını sağlayan değişkenler vardır.<br />
Her c++ değişkeni bilgisayarın<br />
hafızasındaki bir yere kaydedilmektedir.<br />
Değişkenin adresi, aynı evinizin adresi gibi tekdir.<br />
Bir değişkenin içeriği ya klavyeden girilir ya da<br />
girilen diğer değerlerin kullanımıyla hesaplanır.<br />
C++ da başka türde bir değişken daha vardır.<br />
Programın gücünü ve esnekliğini arttıran bu<br />
değişken tipine pointer (işaretçi)denir.<br />
Pointer belirli tipteki başka bir değişkenin<br />
adresini depolayan int tipinde bir değişkendir.<br />
Pointerları önüne yıldız işareti koyarak tanımlanır.<br />
Örneğin tipi int olan bir p sayısı için pointer tanımlaması şu şekildedir:<br />
int* p; // * işareti değişken tipine de yakın olabilir.<br />
Ya da<br />
int *p; // * işareti değişkene yakında olabilir.<br />
Bir pointerın kendisine bir değer atanamaz,<br />
fakat pointerın gösterdiği bellek adresine bir değer atanabilir.<br />
int* i;<br />
i = 3; // yanlış<br />
int* i;<br />
*i = 3; // doğru<br />
NEDEN POİNTER KULLANIRIZ?<br />
Öncelikle değişkenin adresini alıp bunu bir pointera atarız.<br />
Bir diziye aktarılan değerler üzerinde işlem yaparken pointer<br />
kullanımı işlemin hızını arttırır.<br />
Ayrıca,program çalışırken değişkenlere dinamik olarak yer tahsis eder.<br />
Bu özellik sayesinde program,girdilerine<br />
bağlı hafızasının kullanımını ayarlar.<br />
Çünkü önceden kaç değişken kullanacağınızı bilemezsiniz.<br />
Referanslar yani adres operatörleri<br />
değişkenin değeri ile birlikte<br />
adresinide tutarlar.<br />
Değişkenlerin bellekteki adreslerini bulmak<br />
için adres(referans) operatörü yani & kullanılır.<br />
6