8.5 Fonksiyon Parametreleri
8.5 Fonksiyon Parametreleri
Fonksiyon parametreleri (argümanları) klasik ve modern olmak üzere iki türlü tanımanabilir. Örneğin aşağıdaki fonksiyon kendisine parametre olarak gelen tamsayının faktoriyelini gönderir. Bu fonksiyonun parametresi (n):
1 2 3 4 5 6 7 8 9 |
int faktoriyel(n) /* kalsik biçim */ int n { int i=1, f=1; while(i<=n) f *= i++; return f; } |
şeklinde yada:
1 2 3 4 5 6 7 8 |
int faktoriyel(int n) /* modern biçim */ { int i=1, f=1; while(i<=n) f *= i++; return f; } |
şeklinde yazılabilir.
Bir fonksiyona parametre aktarım yapılması zorunlu değildir. Parametresiz bir fonksiyon da tanımlamak mümkündür. Bu durumda argümanlar kısmı ya boş bırakılır yada bu kısma voidyazılır. Örneğin standard C’de stdlib.h kütüphanesinde tanımlı rand fonksiyonu şöyle tanımlanmıştır:
1 |
int rand(void); |
Son olarak, ne parametresi ne de geri dönüş değerine olan bir fonksiyon şöyle tanımlanabilir:
1 2 3 4 |
void mesaj_yaz() { printf("Hata olustu !..\n"); } |
yada
1 2 3 4 |
void mesaj_yaz(void) { printf("Hata olustu !..\n"); } |