THT DUYURU
C/C++ Çok paradigmalı ve çok kullanılan C/C++ dillerinin dökümanlarının paylaşım alanı.

Seçenekler

C++ Pointers | 1

Ego1st - ait Kullanıcı Resmi (Avatar)
Yazılımcı
Üyelik tarihi:
03/2018
Mesajlar:
1.078
Konular:
98
Ticaret:
(0) %
7
2051
4 Hafta önce
#1
C++ Pointers (Göstericiler) | 1

C++'da göstericiler(pointers) memory address belirtir. Veri'nin saklandığı yere işaret eder. Değişkenler bir verinin tuttuğu değeri belirtirken, göstericiler bir veriyi tutan değişkenlerin adresini içerir.

Pointer'ların olduğu her dilde olduğu gibi C++'da da bir gösterici tanımlamak için bildirimi yapılmalıdır, bu değişken isminin önüne yıldız(*) işareti konarak yapılır.

<type> *[pointer_name] şeklinde tanımlanabilir. Örnek olarak;

int p1; // Bir gösterici değildir.
int *p2 // Başına * koyarak belirttiğimiz için bir göstericidir.

int p3, *p4 // p4 bir gösterici fakat p3 bir gösterici değildir.

& Operator

& ifadesi adres operatörüdür. Bir değişkene atanıp kullanılabilir. Örneğin;

int n1 = 20;
int *p1;
p1 = &n1

Bu durumda p1 bize n1'in bellekte tuttuğu adresi verecektir.



Şekildeki gibi.

Tabi ki gerçekte adresler bellekte bu şekilde tutulmaz o yüzden beraber bir örnek yapalım ve görelim.





Gördüğünüz gibi çıktımız bu şekilde. p1'in değeri adres belirtirken; gösterdiği yerdeki aldığı değişken 20. Yani * operatörü kullanıldığında gösterdiği yerdeki değişkeni döndürür.

Pointer Arithmetic

C++'da pointerlar ile dolaylı olarak adreslerle tamsayı türünden işlemler yapmak mümkün (aynı tür adresler için karşılaştırma operatörü de kullanılabilir). Örnek olarak bir pointer'ın değeri 1 arttığında pointer'ın tuttuğu değişkenin bellekte kapladığı yer kadar yer atlar. Ne demek istiyorum?



int veri tipi bellekte 4 byte'lık yer tuttuğu için bellekte 4 yer atlamış oldu.

Göstericiler ile ilgili değinebileceğimiz daha çok şey var, onları da diğer bölümlere bırakıyorum.
Hata veya eksik bilgi varsa lütfen belirtin.
TeamRound, oxydes, x4807, 0x1D, Napcaz, PoyrazYare Teşekkür etti.
TeamRound - ait Kullanıcı Resmi (Avatar)
Grafiker (Stajyer)
Üyelik tarihi:
01/2018
Nereden:
Uzay
Mesajlar:
2.038
Konular:
135
Teşekkür (Etti):
802
Teşekkür (Aldı):
652
Ticaret:
(0) %
4 Hafta önce
#2
Elinize emeğinize sağlık
---------------------

✪ Türk ✪ milleti cihana hakim olmak için yaratılmıştır ..
THT Cyber Star Hacking Eğitim Seti [Türkiye'de İlk! Ücretsiz]

Vepers - ait Kullanıcı Resmi (Avatar)
Kıdemli Üye
Üyelik tarihi:
12/2015
Nereden:
İstanbul
Yaş:
18
Mesajlar:
2.475
Konular:
103
Teşekkür (Etti):
80
Teşekkür (Aldı):
1914
Ticaret:
(0) %
4 Hafta önce
#3
Elinize sağlık
---------------------
x4807 - ait Kullanıcı Resmi (Avatar)
araştırıyoruz bir şeyler
Üyelik tarihi:
08/2019
Mesajlar:
893
Konular:
103
Teşekkür (Etti):
1834
Teşekkür (Aldı):
925
Ticaret:
(0) %
4 Hafta önce
#4
Devamını bekleriz, eline sağlık
0x1D - ait Kullanıcı Resmi (Avatar)
Yazılımcı
Üyelik tarihi:
04/2020
Nereden:
a
Yaş:
100
Mesajlar:
2.413
Konular:
378
Teşekkür (Etti):
737
Teşekkür (Aldı):
1716
Ticaret:
(0) %
4 Hafta önce
#5
Eline sağlık
CyberXhackk - ait Kullanıcı Resmi (Avatar)
Kıdemli Üye
Üyelik tarihi:
03/2016
Nereden:
C/C++ Dev.
Mesajlar:
3.124
Konular:
246
Teşekkür (Etti):
846
Teşekkür (Aldı):
1187
Ticaret:
(0) %
4 Hafta önce
#6
Biraz amatorce bir yazi olmus fakat elinize saglik, dipnot : C++'da zorunlu olmadikca pointer kullanilmasi hos bir durum degil.
Ego1st - ait Kullanıcı Resmi (Avatar)
Yazılımcı
Üyelik tarihi:
03/2018
Mesajlar:
1.078
Konular:
98
Ticaret:
(0) %
4 Hafta önce
#7
Alıntı:
CyberXhackk´isimli üyeden Alıntı Mesajı göster
Biraz amatorce bir yazi olmus fakat elinize saglik, dipnot : C++'da zorunlu olmadikca pointer kullanilmasi hos bir durum degil.
Teşekkürler, devamını getireceğim daha anlatılacak çok konu var

Alıntı:
Xenopeltis´isimli üyeden Alıntı Mesajı göster
Eline sağlık
Teşekkürler

Alıntı:
x4807´isimli üyeden Alıntı Mesajı göster
Devamını bekleriz, eline sağlık
Gelecek, teşekkürler .)

Alıntı:
Vepers´isimli üyeden Alıntı Mesajı göster
Elinize sağlık
Teşekkürler

Alıntı:
TeamRound´isimli üyeden Alıntı Mesajı göster
Elinize emeğinize sağlık
Teşekkürler
TürK.KuRdU - ait Kullanıcı Resmi (Avatar)
Kıdemli Üye
Üyelik tarihi:
04/2016
Nereden:
'm
Mesajlar:
3.988
Konular:
314
Teşekkür (Etti):
962
Teşekkür (Aldı):
1174
Ticaret:
(0) %
4 Hafta önce
#8
güzel anlatım olmuş, eline emeğine sağlık.
--------------------- hate me, won't break me, I’m killing everyone i love

Bookmarks


« Önceki Konu | Sonraki Konu »
Seçenekler