Bağlı Listeler
Ö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.