seferahsankaptiel
Centipat
- Katılım
- 16 Mayıs 2022
- Mesajlar
- 324
- Makaleler
- 3
BİR POINTER NEDİR?
Pointer: bir bellek adresi depolayan bir değişkendir. Pekâla, bu oldukça basit, fakat o zaman bellek adresi nedir? Her değişken bilgisayar belleğindeki benzersiz bir yere konumlanır ve bu benzersiz konumun da kendi benzersiz adresi, bellek adresi vardır.
Normalde değişkenler "merhaba" veya 5 gibi değişkenleri tutarlar ve bu değişkenler bilgisayar belleğindeki belirli bir konum altında depolanır. Ancak bir pointer ise çok daha vahşi bir şeydir çünkü onun değeri olarak bellek adresini tutar ve ilişkili bellek adresini kullanarak bellek içindeki belirli bir değere işaret etme (dolayısıyla işeretçi - pointer) yeteneğine sahiptir.
BİR DEĞİŞKENİN BELLEK ADRESİNİ ELDE ETMEK
Bir pointer'ın ne olduğuna dair temel bir fikriniz olduğuna göre, hadi şimdi bir değişkenin bellek adresinin nasıl elde edileceğine bakalım. Bunu yapmak için de, & operatörünün adresini kullanmaya ihtiyacımız var:
#include <iostream>
int main()
{
using namespace std;
// Bir tamsayı değişkeni tanımlayın ve 99 ile onu başlatın
unsigned short int myInt = 99;
// myInt değişken değerini yazdırın
cout << myInt << endl;
// myInt değişkeninin bellek adresini yazdırmak
//için & operatörünün adresini kullanın
cout << &myInt << endl;
return 0;
}
Bu programın çıktısı ise şöyle olmalıdır:
99
0xbff26312
Çıktının ilk satırı bir tamsayı değeri olarak 99'u içerir, ikinci satırda ise yazdırılan myInt adlı değişkenin bellek adresi vardır. Çıktınızın farklı olabileceğinizi unutmayın.
Pointer: bir bellek adresi depolayan bir değişkendir. Pekâla, bu oldukça basit, fakat o zaman bellek adresi nedir? Her değişken bilgisayar belleğindeki benzersiz bir yere konumlanır ve bu benzersiz konumun da kendi benzersiz adresi, bellek adresi vardır.
Normalde değişkenler "merhaba" veya 5 gibi değişkenleri tutarlar ve bu değişkenler bilgisayar belleğindeki belirli bir konum altında depolanır. Ancak bir pointer ise çok daha vahşi bir şeydir çünkü onun değeri olarak bellek adresini tutar ve ilişkili bellek adresini kullanarak bellek içindeki belirli bir değere işaret etme (dolayısıyla işeretçi - pointer) yeteneğine sahiptir.
BİR DEĞİŞKENİN BELLEK ADRESİNİ ELDE ETMEK
Bir pointer'ın ne olduğuna dair temel bir fikriniz olduğuna göre, hadi şimdi bir değişkenin bellek adresinin nasıl elde edileceğine bakalım. Bunu yapmak için de, & operatörünün adresini kullanmaya ihtiyacımız var:
#include <iostream>
int main()
{
using namespace std;
// Bir tamsayı değişkeni tanımlayın ve 99 ile onu başlatın
unsigned short int myInt = 99;
// myInt değişken değerini yazdırın
cout << myInt << endl;
// myInt değişkeninin bellek adresini yazdırmak
//için & operatörünün adresini kullanın
cout << &myInt << endl;
return 0;
}
Bu programın çıktısı ise şöyle olmalıdır:
99
0xbff26312
Çıktının ilk satırı bir tamsayı değeri olarak 99'u içerir, ikinci satırda ise yazdırılan myInt adlı değişkenin bellek adresi vardır. Çıktınızın farklı olabileceğinizi unutmayın.