Skip to content
This repository has been archived by the owner on Nov 4, 2023. It is now read-only.
/ kedi.h Public archive
forked from Afacanc38/kedi.h

Dinamik olarak bağlanabilir kitaplık denemeleri, aynı zamanda ilk C projem.

License

Notifications You must be signed in to change notification settings

alperenisa/kedi.h

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

kedi.h

Dinamik olarak bağlanabilir kitaplık denemeleri, aynı zamanda ilk C projem.

Çalıştırmak için

make
make run

kedi_cinsi [enum]

enum kedi_cinsi
{
    TEKIR,
    SIYAM,
    DIGER
};

Kedi cinsini belirler.

kedi [struct]

typedef struct kedi
{
    char* ad;
    int yas;
    enum kedi_cinsi cins;
} kedi;
  • ad: Kedinin adını belirtir.
  • yas: Yıl biçiminden kedinin yaşını belirtir.
  • cins: Kedinin cinsini belirtir.

yeni_kedi [function]

kedi* yeni_kedi (char* kedi_adi, int yas, enum kedi_cinsi cins)
{
    kedi *i = malloc(sizeof(kedi));
    i->ad = strdup (kedi_adi);
    i->yas = yas;
    i->cins = cins;

    return i;
}

Bellek yığınında yeni bir kedi oluşturur ve kedinin adresini dönderir.

kedi_bilgi [function]

void kedi_bilgi (kedi *k)
{
    printf ("Adı: %s\n", k->ad);
    printf ("Yaşı: %d\n", k->yas);
    printf ("Cinsi: %s\n", kedi_cins_bul(k));
}

Verilen kedinin kimliğini stdout'a yazdırır.

kedi_cins_bul [function]

char* kedi_cins_bul (kedi *k)
{
    switch (k->cins)
    {
        case TEKIR:
            return "tekir";
        case SIYAM:
            return "siyam";
        default:
            return "diğer";
    }
}

Kedinin cinsini enum'dan char*'a çevirir.

rahat_birak [function]

void rahat_birak (kedi *k)
{
    free (k->ad);
    free (k);
}

Verilen kediyi bellek yığınından temizler. Bunu yapmayı unutmak bellek sızıntılarına yol açabilir.

About

Dinamik olarak bağlanabilir kitaplık denemeleri, aynı zamanda ilk C projem.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 79.9%
  • Makefile 20.1%