Etiket arşivi: C

Function Pointers in C

Fonksiyon işaretçisi, bir fonksiyonu bildirim referansını kullanarak çağırabilmemizi sağlar. Yani, bir fonksiyonu parametrik olarak çalıştırma imkanımız olur.

void (* func_name) ( ) = function_name;

Bunun bendeki en sık kullanma amacı Fonksiyon Listesi hazırlamak:


 int funcA(void);
 int funcB(void);
 int funcC(void);
 int funcD(void);
 int funcE(void);
 int funcF(void);

 int (* functionList[]) () = 
 {
  funcA, funcB, funcC, funcD, funcE, funcF 
 };

 // bu bildirimin cümle içinde kullanımı şöyle:
 ret_val = functionList[list_index]();

Her ne kadar bir kaynak dosyası içinde kullanılacak bir fonksiyon için deklarasyon yazmak zorunda olmasak da, fonksiyon listesi hazırlarken deklarasyon yazmalıyız. Deklarasyon bize yürütme kısmından önce o fonksiyona dair işaretçiyi kullanma şansı verir. Bu şekilde liste bildirimi yaparken liste elemanlarını sabit olarak kullanabiliriz.

C vs Pascal

Yeni biriyle tanışırken C…
Eski dostlarla sohbet ederken Pascal…

Teknik şartname yazarken C…
Teklif hazırlarken Pascal…

İş toplantısında C…
Felsefe yaparken Pascal…

Tatilde turistik bir yer gezerken Pascal…
Alışveriş merkezinde dolaşırken C…

Bayramlarda C…
Eski bayramlarda Pascal…

Mahkemede savunma yaparken C…
Hapiste küfür ederken Pascal…

Sofra duası yaparken C…
Dostlarla arabada bira içerken Pascal…

Gürültücü komşuyu uyarırken C…
Anasına avradına söverken Pascal…

Cuma namazında dua ederken C…
Son duanı ederken Pascal…