BİLİŞİM - BİLGİSAYAR - EĞİTİM
  Fonksiyonlarda Prototip Kullanımı
 

Fonksiyonlarda Prototiplerin Kullanılması

 

Fonksiyon prototype’ı nedir ?

Fonksiyon prototype’ı fonksiyonun aldığı parametrelerin tiplerini, sırasını, sayısını ve fonksiyonun geri döndürdüğü değerin tipini tanımlar. Fonksiyon prototiplerinin kullanımı C’de zorunlu değildi. Fakat C++’da bir zorunluluk haline gelmiştir. Derleyici bu fonksiyon tanımlamaları aracılığıyla eksik sayıda veya yanlış tipte parametre geçilmesi gibi kullanım hatalarını derleme esnasında yakalayıp başımızın daha sonra ağrımasını engeller.

Fonksiyon tanımlamasının fonksiyon kullanılmadan önce yapılmış olması gerekmektedir. Bunun için genellikle fonksiyon tanımlamaları header dosyalarında tutulur ve fonksiyonun kullanılacağı dosyalara bu header dosyası include yönlediricisi ile eklenir

#include <header_dosya_ismi.h> veya

#include "header_dosya_ismi.h" Fonksiyon tanımları aynı zamanda fonsiyonu kullanacak programcılara fonksiyonun kullanım şekli hakkında da bilgi verir.

karesiniAl(int sayi);

veya

karesiniAl(int);

Yukarıda daha önceki örneklerimizde kullandığımız KaresiniAl fonksiyonun tanımlaması verilmektedir. Fonksiyon tanımlaması iki şekilde yapılabilmektedir. Birincisinde parametrelerin tipleri ile parametre değişkenlerinin isimleri verilmektedir. İkincisinde ise sadece parametrenin tipi belirtilmektedir. Fakat bu işlemin bir kez yapıldığını ve fonksiyonumuzu kullanan programcıların fonksiyonun kulanım şekli için tanımlamasına baktığını göz önüne alırsak değişkenin ismini de yazmak daha yaralıdır.

 

Bazı fonksiyon tanımlama örnekleri

#include <kare.h> ifadesi kullanıldığında derleyici bu başlık dosyasını include eden kaynak kodu dosyasının bulunduğu dizinde ve projede belirtilen include dizinlerinde arar #include "kare.h" ise kaynak kodunun bulunduğu dizinde arar.

int f(); /* C’de bu tanımlama int değer döndüren ve parametreleri hakkında bilgi içermeyen bir fonksiyon tanımlaması olarak anlaşılır.*/

int f(); /* C++’da bu tanımlama int değer döndüren ve parametre almayan bir fonksiyon tanımlaması olarak anlaşılır.*/ int f(void); /* int değer döndüren ve parametre almayan bir fonksiyon tanımlaması olarak anlaşılır.*/

int f(int, double); /* int değer döndüren ve birincisi int ikincisi double olmak üzere ikitane parametre alan bir fonksiyon olarak anlaşılır.*/

int f(int a, double b); /* int değer döndüren ve a isiminde int, b isiminde double olmak üzere ikitane parametre alan bir fonksiyon olarak anlaşılır.*/

 
 
  Bugün 127 ziyaretçi (193 klik) www.bilisim-egitim.tr.gg  
 
Bu web sitesi ücretsiz olarak Bedava-Sitem.com ile oluşturulmuştur. Siz de kendi web sitenizi kurmak ister misiniz?
Ücretsiz kaydol