Arama butonu
Bu konudaki kullanıcılar: 1 misafir
2
Cevap
481
Tıklama
0
Öne Çıkarma
C programlama
B
9 yıl (89 mesaj)
Çavuş
Konu Sahibi

B

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil





< Bu mesaj bu kişi tarafından değiştirildi bgm__ -- 5 Haziran 2017; 18:46:1 >

< Bu ileti mobil sürüm kullanılarak atıldı >

H
9 yıl (282 mesaj)
Yüzbaşı

Bu tür sorularda kodu yazıp ekran çıktısına baksanız daha iyi olur. Bizim ekran çıktısı şudur dememizin bir anlamı yok. Önemli olan kodu sizin yorumlayıp kafanızda çalıştırmayı denemenizdir. Kodları yorumlarken anlamadığınız bir kod olursa sorabilirsiniz.

*p -> pointer yani işaretçidir. Değişken adresi tutar. Başka bir ifadeyle adres işaret eder.
& -> referans yani adresdir.

Örnek:
 
#include<stdio.h>

int main()
{
int a=5; // Normal değişken
int *p; // Adres saklayacak yani adres işaret edecek pointer (işaretçi)
int **r; // Pointer işaret edecek pointer.

p=&a; // p'ye a'nın adresini ata.
printf("%d \n", a); // a'nın değerini yaz
printf("%d \n", p); // p'nin işaret ettiği adresi yaz yani a'nın adresidir
printf("%d \n", *p); // p'nin işaret ettiği adresdeki değeri yaz. yani a'nın değerini yaz
printf("%d \n", &p); // p'nin adresini yaz

printf("------------------------------------\n");

r=&p; // r, p'nin adresini saklar. tabiki r'nin kendi adresi vardır.
printf("%d \n", a); // a'nın değerini yaz
printf("%d \n", r); // r'nın işaret ettiği adresi yaz yani p'nin adresidir
printf("%d \n", *r); // r'nin işaret ettiği adresdeki değeri yaz. yani p'nin değerini yaz yani a'nın adresini yaz
printf("%d \n", **r); // r'nin işaret ettiği adresin işaret ettiği adresdeki değeri yaz yani a'nın değerini yaz
printf("%d \n", &r); // r'nin adresini yaz

printf("------------------------------------\n");

**r=7; // r'nin işaret ettiği adresin işaret ettiği adresdeki değeri 7 yap yani a'yı 7 yap
printf("%d \n", a);

return 0;
}


< Resime gitmek için tıklayın >



H
9 yıl (282 mesaj)
Yüzbaşı

Biz yardımcı olalım dedik ama emeğimiz boşuna gitti gibi.
Neyse C dilinde pointer nedir? merak edenlerin karşısına belki bu resim çıkar.



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.