Dokuman Anasayfa
 


 

İşaretçi İşlemleri ve Dinamik Bellek

2. İşaretçi İşlemleri ve Dinamik Bellek

İşaretçilere daha önce görmüş olduğumuz artırma (++), azalatma (--), çıkarma (-), toplama (+) işlemlerini uygulayabilirsiniz. Bunların yanında ilişkisel operatörleri de ( <=, =, !=, >= ) kullanmanız mümkündür. İlişkisel operatörlerin sadece aynı tip işaretçiler üzerinde uygulanacağını unutmayınız.

Bir dizinin boyutu değişken olabilir, daha dorusu bir program içinde değişkenler ve işaretçiler kullanılarak diziler dinamik bellek yerleşimi ile yapılabilir. C++ da dinamik belleş işlemleri new ve delete komutları ile gerçekleştirilir.

Genel tanımımız:

new <tür> [<[uzunluk]>]

new int
new char
new double [10]
new float[n]
new char[strlen(s) + 1]

new komutu ile yer tahsis etme işlemi yapmaktayız. new int ->1 int'lik yer tahsis edilmiştir. Şimdide tahsis ettiğimiz yerin serbest bırakılışını ele alalım. Bu sırada da delete komutu devreye giriyor. Daha doğrusu delete operatöürü new operatörüyle tahsis edilmiş olan blokları serbest bırakmak için kullanılır.

Genel tanımımız:

Delete[ ] <işaretçiadı>;

Eğer yer ayırma işlemi tek parça olarak yapılmışsa (köşeli parantez kullanılmadan yapılmışsa) silme işlemi de köşeli parantez kullanılmadan yapılmalıdır. Bir de şuna dikkat edelim

Delete x+1; //hatalıdır
Delete (x+1); //doğrudur

kullanılacaktır. Şimdi bu söylediklerimizi aşağıdaki örnek üstünde uygulayalım.

//dinamik.cpp
//dinamik bellek kavramı
#include <iostream.h>

struct tarih {     //struck u daha görmedigimiz
   int ay;         //icin su an buraya egilmeyin.
   int gun;
   int yil;
};

void main()
{
int i, *is1, *is2;  // i bir sabit ve *is1, *is2 isaretcilerimiz

   is1 = &i;  

 

» Hakkımızda
  İcerikde ekli bulunan dokumanların her hangı bır websitesi veya baska bır kaynakla alakası yoktur.Tamamen bizim emegimiz olan bu dokumalar uzun cabalar sonucunda bukadarı bır araya getirilmistir.Onun için emege saygılı olalım.
Genel Sorumlu ::  [ Site Yöneticisi ]  [ By SaNaLLord
 . Anasayfa . Bize ulasin . 
SaNaLLoRd Bilgi İşlem merkezi Genel tasarim ve kodlamada son nokta