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 />

Yukarıdaki gösterimde bulunması zorunlu sözdizim elemanları açısal ayraç içinde,<br />

bulunması zorunlu olmayan sözdizim elemanları ise köşeli ayraç içinde belirtilmiştir.<br />

Tanımlanan işlevler en az bir blok içermelidir. Bu bloğa işlevin ana bloğu denir. Ana blok<br />

içinde istenildiği kadar iç içe blok yaratılabilir. Aşağıdaki işlev tanımından func isimli<br />

işlevinin parametre almadığı ve geri dönüş değerinin de double türden olduğu anlaşılır.<br />

double func()<br />

{<br />

}<br />

Yukarıdaki tanımı inceleyin. Önce işlevin geri dönüş değerinin türünü gösteren anahtar<br />

sözcük yazılır. Bildirim ve tanımlama konusunda anlatılan C'nin doğal türlerini belirten<br />

anahtar sözcük(ler) ile işlevin hangi türden bir geri dönüş değeri ürettiği belirtilir.<br />

Yukarıda tanımlanan func isimli işlevin geri dönüş değeri double türdendir.<br />

Daha sonra işlevin ismi yazılır. İşlevin ismi C dilinin isimlendirme kurallarına uygun<br />

olarak seçilmelidir. Geleneksel olarak işlev isimleri de, değişken isimleri gibi küçük harf<br />

yoğun olarak seçilirler. İşlev ismini izleyen, açılan ve kapanan ayraçlara işlevin parametre<br />

ayraçları denir. Bu ayracın içinde, işlevin parametre değişkenleri denen değişkenlerin<br />

bildirimi yapılır. func isimli işlevin parametre ayracının içinin boş bırakılması bu işlevin<br />

parametre değişkenine sahip olmadığını gösteriyor. Parametre ayracını açılan ve kapanan<br />

küme ayraçları, yani bir blok izliyor. İşte bu bloğa da işlevin ana bloğu (main block)<br />

denir. Bu bloğun içine işlevin kodları yazılır.<br />

void Anahtar Sözcüğü<br />

Tanımlanan bir işlevin bir geri dönüş değeri üretmesi zorunlu değildir. İşlev tanımında bu<br />

durum geri dönüş değerinin türünün yazıldığı yere void anahtar sözcüğünün yazılmasıyla<br />

anlatılır:<br />

void func()<br />

{<br />

}<br />

Yukarıda tanımlanan func işlevi geri dönüş değeri üretmiyor. Geri dönüş değeri<br />

üretmeyen işlevlere void işlevler denir.<br />

İşlev tanımında geri dönüş değerinin türü bilgisi yazılmayabilir. Bu durum, işlevin geri<br />

dönüş değeri üretmediği anlamına gelmez. Eğer geri dönüş değeri tür bilgisi yazılmaz<br />

ise, C derleyicileri tanımlanan işlevin int türden bir geri dönüş değerine sahip olduğunu<br />

varsayar. Örneğin:<br />

func()<br />

{<br />

}<br />

Yukarıda tanımlanan func işlevinin geri dönüş değerinin türü int türüdür. Yani işlevin<br />

yukarıdaki tanımıyla<br />

int func()<br />

{<br />

}<br />

tanımı arasında derleyici açısından bir fark yoktur. Geri dönüş değerinin türünün<br />

yazılmaması geçmişe doğru uyumluluk için korunan bir kuraldır. int türüne geri dönen bir<br />

işlevin tanımında int sözcüğünün yazılması tavsiye edilir.<br />

[C++ dilinde işlev tanımında geri dönüş değerinin türünün yazılması zorunludur.]<br />

55/529

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

Saved successfully!

Ooh no, something went wrong!