CodeBlanks Logo Icon CodeBlanks

typedef ve struct

  • C kursu
  • Orta seviye
  • Ders 106/116
  • 4 dk

typedef ile struct'a kısa isim vermeyi öğrenirsin.

typedef ve struct

typedef, bir türe yeni bir ad verir. struct ile birlikte kullanıldığında her seferinde struct yazmaktan kurtulursun. Bildirim: typedef struct { ... } Person;.

Örnek: typedef struct { char name[32]; int age; } Person;. Bundan sonra struct Person p; değil, doğrudan Person p; yazarsın. Bu, kodu kısaltır ve okunabilirliği artırır. Tür adı bir kere tanımlanır; tüm program boyunca kısa adla kullanılır. Bu desen, C'de veri soyutlamanın temelidir ve büyük projelerde tutarlı tür adları sağlar.

Person yapısı

Bir Person yapısı, ad ve yaş alanlarını bir arada tutar. typedef ile tanımladıktan sonra değişken tanımlamak ve erişmek kolaylaşır.

Örnek: Person p = {"Ayşe", 25}; ile bir kişi oluşturursun. p.name adı, p.age yaşı verir. printf("%s %d\n", p.name, p.age); ile her iki alanı yazdırırsın. Küme parantezi içindeki değerler yapıdaki alan sırasına göre yerleşir. Bu, kayıt benzeri verileri temsil etmenin C'deki standart yoludur; her alan bir özelliği taşır.

Uygulama Person yapısı yaz

typedef struct { char name[32]; int age; } Person; tanımla. main içinde Person p = {"Ayşe", 25}; oluştur. printf("%s %d\n", p.name, p.age); ile yazdır.

Başlangıç kodu

main.c
#include <stdio.h>

// Person yapısını typedef ile tanımla
// main'de Person değişkeni oluştur ve yazdır

int main(void) {
    return 0;
}

Örnek çözüm

main.c
#include <stdio.h>

typedef struct {
    char name[32];
    int age;
} Person;

int main(void) {
    Person p = {"Ayşe", 25};
    printf("%s %d\n", p.name, p.age);
    return 0;
}

Beklenen çıktı

Ayşe 25

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 typedef struct ne kazandırır?

  • Daha az bellek kullanımı
  • Daha hızlı derleme
  • Her seferinde struct yazmaktan kurtulur Doğru cevap
  • Otomatik bellek temizleme

Açıklama: typedef, struct anahtar sözcüğünü tekrarlamayı engeller.

2 Person değişkenini tamamla

Soru
Person p = {"Ayşe", ____};
Cevap
Person p = {"Ayşe", 25};

Açıklama: Person p = {"Ayşe", 25}; ile kişi oluştur.

3 typedef struct parçalarını eşle

Kavram Anlamı
typedef Ad verme
struct Yapı tanımı
Person Kısa ad
p.name Alan erişimi

Orta seviye bölümündeki tüm dersler