BG MVC Model View Controller eğitim serisi yayında...

Ana sayfa > Programlama > C Programlama > C örnek kodlar > c_ornek00010

C örnek kodlar

Çok boyutlu dizilere dinamik bellek tahsis etme

Çok boyutlu dizilere dinamik bellek tahsisi yapmak için işaretçi dizilerini kullanabiliriz. Bu yöntemde her dizi için tahsis edilen edilen bellek ve bellek boşaltma işlemleri bir döngü ile yapılır. Aşağıdaki program iki boyutlu bir karakter dizisine bellek tahsisi yaparak işlem yapar.


#include <stdio.h>
#include <string.h>
#include <stdlib.h>

int main()
{
  char *pdizi[3];
  int id;

  /* Bellek tahsisi */
  for (id=0; id<3; id++) {
       pdizi[id] = (char *) malloc(20 * sizeof(char));
  }

  /* Dizi atama */
  for (id=0; id<3; id++) {
       strcpy(pdizi[id], "Karakter dizisi");
  }
  /* Yazdırma */
  for (id=0; id<3; id++) {
       printf ("%s\n", pdizi[id]);
  }

  /* Bellek boşaltma */
  for (id=0; id<3; id++) {
       free(pdizi[id]);
  }

  return 0;
}

Yukarıdaki örnekte, program aşağıdaki satırları ekrana yazar:

Karakter dizisi
Karakter dizisi
Karakter dizisi