C DİLİ KULLANARAK BİLGİSAYAR PROGRAMLAMA ... - 320Volt
C DİLİ KULLANARAK BİLGİSAYAR PROGRAMLAMA ... - 320Volt
C DİLİ KULLANARAK BİLGİSAYAR PROGRAMLAMA ... - 320Volt
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
8- Yapılar (struct)<br />
Farklı tipte birden fazla verinin oluşturduğu bütün.<br />
65<br />
Veri tipi olarak daha önce diziyi tanımlamıştık. Dizide birbirinin aynı tipi olan veriler peşpeşe saklanıyordu.<br />
Yapılar da aynı dizi gibi birbirleriyle ilgili olan verileri içerir. Fakat diziden farkı, tek bir yapı elemanı birbirnden<br />
farklı tipte birden fazla veriyi içerir. Bu sayede bilgiler daha düzenli şekilde gösterilir.<br />
Yapı yeni bir tip olmayıp var olan standart tiplerden oluşur.<br />
8.1 Yapı Tanımı<br />
Bir öğrencinin numarasını, adını ve sınavdan aldığı notu içeren bir yapı tanımlaması aşağıdaki gibidir.<br />
struct ogryapi {<br />
char numarasi[10];<br />
char adi[20];<br />
int notu ;<br />
}<br />
struct ogryapi ogr;<br />
Artık ogryapi isimli bir veri tipi vardır ve üç üyeden (alandan) oluşmaktadır ( member =üye : kayıdı oluşturan<br />
farklı veri tiplerinin her biri).<br />
* Tanımlamada her alanın adı ve tipi belirtilir.<br />
* Yapı tipi olduğunu gösterir struct saklı sözcüğü kullanılır.<br />
* Aynı alan adı farklı yapılarda (bağımsız olarak) kullanılabilir.<br />
Tanımlama genel olarak<br />
struct Yapı_Adı {<br />
Alan1;<br />
Alan2;<br />
. . .<br />
Alan_n;<br />
};<br />
Bu tipte bir değişken ise<br />
struct Yapı_Adı Deği_Adı;<br />
şeklinde yapılır.<br />
Tanımlanan tipte bir değişken tanımlandığınıda, değişken için bellekte tüm alanları içerecek şekilde yer ayırılır.<br />
İlgili değişkendeki herhangi bir alan üzerinde işlem yapmak için aralarında nokta karakteri olmak koşuluyla<br />
sırasıyla değişkenin adı ve ilgili alanın adı verilir. Yukarıdaki öğrenci örneğinde öğrecinin numarasına<br />
ogr.numarasi şeklinde erişilir.<br />
Örnek 8.1.1: Karmaşık sayılarda toplama işlemi gerçekleştirme.<br />
main()<br />
{