08.11.2014 Views

c_kitap

c_kitap

c_kitap

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

C ve Sistem Programcıları Derneği - C Ders Notları - Necati Ergin<br />

isimdizi a, b, c;<br />

Gibi bir tanımlama yapılırsa, artık a, b, c her biri 20 elemanlı char türden dizilerdir.<br />

Bir typedef bildirimi ile birden fazla tür ismi yaratılabilir:<br />

typedef unsigned int WORD, UINT;<br />

Yukarıdaki bildirim deyiminden sonra, hem WORD hem de UINT, unsigned int türünün<br />

yerine geçen yeni tür isimleridir:<br />

WORD x, y;<br />

UINT k, l;<br />

Artık x, y, k, l unsigned int türden değişkenlerdir.<br />

10 elemanlı char türden gösterici dizisi için tür ismi bildirimi şöyle yapılabilir:<br />

typedef char *PSTRARRAY[10];<br />

Bu bildirim deyiminden sonra<br />

PSTRARRAY s;<br />

ile<br />

char *s[10];<br />

tamamen aynı anlama gelir.<br />

Bir tür ismi başka tür isimlerinin bildiriminde de kullanılabilir:<br />

typedef unsigned int WORD;<br />

typedef WORD UINT;<br />

Yeni oluşturulan tür isimleri, okunabilirlik açısından ya tamamen büyük harflerden seçilir,<br />

ya da bu isimlerin yalnızca ilk harfleri büyük harf yapılır.<br />

typedef Bildirimlerinin Yapılar İçin Kullanımı<br />

Bir yapı bildirimiyle yeni bir tür yaratılmış olur. Bu tür önce derleyiciye tanıtıldıktan sonra,<br />

bu türe ilişkin değişkenler tanımlanabilir:<br />

struct Data {<br />

int a, b, c;<br />

};<br />

Yukarıdaki bildirimle yeni bir veri türü yaratılıyor. C dilinde bu veri türünün ismi struct<br />

Data'dır. Türün ismi Data değildir. Yani bu veri türünden bir nesne tanımlamak<br />

istendiğinde tür ismi olarak struct Data yazılmalıdır.<br />

[C++ dilinde yapı isimleri (structure tags) aynı zamanda türün de ismidir. struct anahtar sözcüğü olmadan<br />

kullanıldığında da bu türün ismi olarak derleyici tarafından kabul görür.]<br />

Yukarıdaki bildirimden sonra örneğin bir tanımlama yapılacak olsa<br />

struct Data d;<br />

biçiminde yapılmalıdır. C dilinde bu tanımlamanın<br />

389

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!