C/C++ Dillerinde Yapılar (Structures)

C/C++ Dillerinde Yapılar (Structures):

//bu programda structureları(yapıları O_o) inceleyeceğiz.
//sturcturelar az ve öz konuşmak gerekirse farklı türden veri yapılarını tek bir isim altında
//toplamaya yarıyor.Mesela bir roleplaying oyununda oyuncu ile ilgili tonla bilgi olucak en
//basitinden ismi,yaşı,hitpoints'i yanındaki altını vs. bu verilerin hepsini ayrı ayrı tutacağımıza
//hepsini "player" diye bir yapının içine koymamız ilerde programımız büyüdügünde bize çok fayda sağlar.
//Bu programda player diye bir yapı oluşturup bunun içine yukarda saydığım verileri koyucaz.daha sonra bunlara
//programımızda nasıl ulaşacağımızı öğreneceğiz.İşte başlıyoruz...


#include <stdio.h>

//girdi çıktı fonksiyonları(printf();scanf();)

#include <conio.h>

//getch(); fonksiyonunu kullanmamız için.

typedef struct  

//bu ne????tamam panik yok.bir yapı(structure) tanımlarken bunu yazıyoruz.yani mecburuz :]
{
    //şimdi yazacağımız herşey yaratmakta olduğumuz yapının birer elemanı yani member'ı.
    //sırasıyla oyuncunu sahip olmasını istediğimiz verileri yazıyoruz.

    char isim[50];
    //oyuncunun ismi
    int yas,hitpoints,altin;
    //sırasıyla yaşı,hitpoints'i,altını.

}player;
//burda yapımızın ismini veriyoruz.yapının ismi player;programımız içinde bu veri yapısını tanımlarken bu
//ismi kullanacağız.


void main()
{
    int dummyyas=19;

    //evet bunu örnek göstermek için yarattım."int" bir değişken tanımladık.

    //şimdi "player" bir değişken tanımlayacağız.

    player oyuncu={"deneme",17,200,55};
    //gördüğünüz gibi tanımlanma şekillerinde bir fark yok.eğer yarattığımız yapının içindeki elemanlara
    //ilk değerlerini vermek istiyorsak tırnak parantezlerin içine sırasıyla değerleri yazıyoruz.sırasıyla
    //isim,yaş,hitpoints ve altin

    
    oyuncu.yas=dummyyas;
    //en önemli kısım bu tanımladığımız oyuncu değişkeninin herhangi bir elemanına ulaşmak için
    //değişkenin ismini yazdıktan sorna "."(nokta)'ya basıyoruz.Eğer visual studio kullanıyorsanız size bu yapının
    //elemanlarının bir listesini açıyor burda istedigimiz değişkeni seçebiliyoruz.ben yaşı şeçtim ve bunu başka
    //bir değişkene eşitledim.gayet kolay :]


    printf("Ismini yaz savasci : ");
    //oyuncunun ismini istiyoruz.
    scanf("%s",oyuncu.isim);
    //aynen bir değişkenin içine değer koyarkenki gibi yapıyoruz.burda oyuncunun başına "&" adres operatörünü
    //koymamıza gerek yok.çünkü isim bir karater dizisi ve isim bu karakter dizisinin ilk elemanının adresi demek.


    printf("Kac yasindasin ? : ");
    //yas istiyoruz
    scanf("%d",&oyuncu.yas);
    //burda da yaşi istiyoruz.gördüğünüz gibi burda değişkenin adresini veriyoruz.

    //şimdi bütün oyuncu değişkenini ekrana yazdıralım ve programımız bitsin. :]
    printf("oyuncu ozellikleri\n");
    printf("------------------\n");
    printf("isim       : %s \n",oyuncu.isim);
    printf("yas        : %d \n",oyuncu.yas);
    printf("hit points : %d \n",oyuncu.hitpoints);
    printf("altin      : %d \n",oyuncu.altin);


    getch();
    //olup biteni görmemiz için

}
//program bitti.
Barış S. Uşaklı :: 2003 :: www.oyunyapimi.org




Bu yazının bulunduğu site: OyunYapimi.org
http://www.oyunyapimi.org

Bu yazı için adres:
http://www.oyunyapimi.org/modules.php?name=Sections&op=viewarticle&artid=19