Bağlı Listeler

Forum Sayfası Veri Yapıları ve Algoritmalar

Ön Hazırlık.


struct yapısı. birden fazla değişkenin bir arada tutulduğu yapılardır. Bu yapının içinde fonksiyonlarda olursa class adını alır.

kullanımı:

struct kisi{
int numarasi;
int yasi;}

kisi birincikisi, ikincikisi; // değişken gibi tanımlanır.

birincikisi.numarasi=12;  // noktalı bir şekilde iç alana erişim sağlanır.


typedef kullanımı: bir değişkenin farklı isimlerle kullanımını sağlar.

typedef int sayi; // bu ifade ile artık sayi diyince de int demiş oluyoruz.

sayi sinavnotu; // bu yazım ile int sinavnotu; ifadesi aynı oluyor.


* işaretçiler: işaretçiler değişkenlerin hafızadaki adreslerini gösterirler.

int sayi=100;
int *integer_isaretci;

integer_isaretci= &sayi; //& degişkenin değerini değil adresini anlamına gelir.


int yas=20;
 int *yasi_goster;
 yasi_goster=&yas;       //yasi_goster değişkeni yas değişkeninin adresini gösteriyor.


malloc fonksiyonu: Bellekte istenilen tipte bir alan/hücre oluşturur.


 node * root;   // node tipinde bir alanı gösterecek root adında bir değişken.
root = (node *) malloc(sizeof(node)); // node tipinde bir alan oluşturan malloc 
                                      // (node *) ile oluşturulan alanın adresini roota atar.
root ->x=122;     // root'un gösterdiği yerin x alanına 122 değerini atar.
root->next = (node *)malloc(sizeof(node)); // malloc ile node tipinin sığacağı bir alan oluşturur. 
                                  // oluşturulan alanın adresini (node *) ile root'un gösterdiği
                             // yerdeki next pointer'ına atar.
root->next->x=4;      // rootun gösterdiği yerdeki next alanının gösterdiği yere 4 değerini atar.
printf("%d",root->x);         // root'un gösterdiği yerdeki x değeri yazdırılır.
printf("%d",root->next->x);   // rootun gösterdiği yerdeki next değişkeninin gösterdiği yerdeki değeri yazdırır.
getchar();


// Ekran Çıktısı
1224 olur.


Özet: 

malloc(sizeof(tip)); ilgili tipte bir alan oluşturur.
(tip *) tip alanının adresi demektir. ondan sonra gelen alanın adresini alır.
-> pointerin gösterdiği yer anlamına gelir.



	

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir