POINTER Pointer bir deikenin adresini ieren deikendir nt

POINTER Pointer, bir değişkenin adresini içeren değişkendir. İnt x, y İnt *pi x değişkeninin adresi pi pointer ine atanır Pi şimdi x değişkeninin adresine sahiptir ve x değişkenini gösterir pi = &x &x y = *pi x in içeriği Pi ye atanan adresin belirttiği hafıza alanındaki değer y değişkenine atanır.

örnek İnt x, y İnt *pi &x pi = &x x = 10 (1, 245, 060) 10 Statik bellek, değişkenin sadece İçeriği değişmekte, fakat bellekteki Konumu sabit kalmakta y = *pi &pi (1245064) pi (1245060 in içeriği) *pi (pi nin içeriği) = 10) y = 10 Dinamik bellek, pointer bilgisi değiştirilerek belleğin değişik kısımlarına ulaşmak mümkündür
![DİZİLER İnt x[6] &x x[0] x[2] x[1] x[3] x[4] x[5] İnt y[2][3] &y y[0][0] DİZİLER İnt x[6] &x x[0] x[2] x[1] x[3] x[4] x[5] İnt y[2][3] &y y[0][0]](http://slidetodoc.com/presentation_image_h/aaf79bb2f43fbc30a5c037298304372a/image-3.jpg)
DİZİLER İnt x[6] &x x[0] x[2] x[1] x[3] x[4] x[5] İnt y[2][3] &y y[0][0] y[0][1] y[0][2] y[1][0] &y 0 y[0][0] y[0][1] y[0][2] 1 y[1][0] y[1][1] y[1][2] 0 1 2 y[1][1] y[1][2]

TİP DÖNÜŞÜMLERİ • Bir tipe sahip bir değerin farklı tipe sahip bir değişkene atanmak istendiği zaman • Bir ifadede operatör tarafından değerlerin işlenmesi sırasında • Bir değerin bir fonksiyona arguman olarak geçmesi sırasında

Genel Aritmetiksel Dönüşümler İnt ( 2 bayt) Char short int Unsigned int ( 2 bayt) long ( 4 bayt) Unsigned long ( 4 bayt) double ( 8 bayt) Long double ( 10 bayt) Unsigned char Unsigned short float Unsignet int double

örnek 1 char ch; int i; float f; double d, long double ld Sonuç = ( ch * i ) + ( f / d ) – ( f + i ) + ld int double double Long double

örnek 2 long l; Unsigned char uc; İnt i, Float x; x = l + uc * i; • uc unsignet int e donuşür • i unsigned int e dönüşür. • (uc*i) sonucu long tipine dönüşür. Toplama yapılır ve sonuç long tipindedir. • long tipindeki sonuç float a dönüşerek x e atanır

örnek 3 İnt a=10, b = 3, float x; x = a / b; int float int 3. 000000

Uygulama 1. ders 4. c yi kullanarak x ve pi nin adreslerini ekrana yazdiriniz. 2. int x[2][2] tipinde bir dizi tanımlayınız ve dizinin her matrisine 2 nin kuvvetlerini (2, 4, 8, 16) atayarak bunları ekrana yazdırınız. 3. Tıp dönüşümleri ile ilgili verilen 3 örneği göz önünde bulundurarak birer örnek program yapiniz ve sonuçları ekrana yazdırınız.

Çıkış Tip karakterleri Short int Long int long float Long double %hd %le %Le %hi %l. E %LE %ho %lf %Lf %hx %lg %Lg %h. X %l. G %LG
- Slides: 10