Bu eğitimde, bir örnek yardımıyla C programlamada kullanıcı tanımlı fonksiyonlar oluşturmayı öğreneceksiniz.
Bir işlev, belirli bir görevi yerine getiren bir kod bloğudur.
C, ihtiyaçlarınıza göre fonksiyonları tanımlamanıza izin verir. Bu işlevler, kullanıcı tanımlı işlevler olarak bilinir. Örneğin:
Diyelim ki, bir daire oluşturmanız ve onu yarıçapa ve renge göre renklendirmeniz gerekiyor. Bu sorunu çözmek için iki işlev oluşturabilirsiniz:
createCircle()
işlevicolor()
işlevi
Örnek: Kullanıcı tanımlı işlev
İşte iki tam sayı eklemek için bir örnek. Bu görevi gerçekleştirmek için kullanıcı tanımlı bir oluşturduk addNumbers()
.
#include int addNumbers(int a, int b); // function prototype int main() ( int n1,n2,sum; printf("Enters two numbers: "); scanf("%d %d",&n1,&n2); sum = addNumbers(n1, n2); // function call printf("sum = %d",sum); return 0; ) int addNumbers(int a, int b) // function definition ( int result; result = a+b; return result; // return statement )
İşlev prototipi
Bir işlev prototipi, basitçe işlevin adını, parametrelerini ve dönüş türünü belirten bir işlevin bildirimidir. Fonksiyon gövdesi içermez.
Bir işlev prototipi, derleyiciye işlevin daha sonra programda kullanılabileceği bilgisini verir.
İşlev prototipinin sözdizimi
returnType functionName (tür1 bağımsız değişken1, tür2 bağımsız değişken2,…);
Yukarıdaki örnekte, int addNumbers(int a, int b);
derleyiciye aşağıdaki bilgileri sağlayan işlev prototipidir:
- fonksiyonun adı
addNumbers()
- işlevin dönüş türü
int
int
işleve iki tür argüman aktarılır
Kullanıcı tanımlı işlev işlevden önce tanımlanmışsa işlev prototipine gerek yoktur main()
.
Bir işlevi çağırmak
Programın kontrolü, kullanıcı tanımlı işleve çağrılarak aktarılır.
İşlev çağrısının sözdizimi
functionName (bağımsız değişken1, bağımsız değişken2,…);
Yukarıdaki örnekte, işlev çağrısı, işlevin addNumbers(n1, n2);
içindeki ifade kullanılarak yapılır main()
.
Fonksiyon tanımı
İşlev tanımı, belirli bir görevi gerçekleştirmek için kod bloğunu içerir. Örneğimizde iki sayı ekleyip döndürüyoruz.
İşlev tanımının sözdizimi
returnType functionName (tür1 bağımsız değişken1, tür2 bağımsız değişken2,…) (// işlevin gövdesi)
Bir fonksiyon çağrıldığında, programın kontrolü fonksiyon tanımına aktarılır. Ve derleyici, bir fonksiyonun gövdesi içindeki kodları çalıştırmaya başlar.
Bir işleve argüman iletme
Programlamada argüman, işleve iletilen değişkeni ifade eder. Yukarıdaki örnekte, işlev çağrısı sırasında iki değişken n1 ve n2 geçirilir.
A ve b parametreleri, işlev tanımında aktarılan bağımsız değişkenleri kabul eder. Bu argümanlara işlevin biçimsel parametreleri denir.
Bir işleve aktarılan argümanların türü ve biçimsel parametreler eşleşmelidir, aksi takdirde derleyici bir hata verir.
N1 karakter türündeyse, a da karakter türünde olmalıdır. Eğer n2 float tipindeyse, b değişkeni de float tipinde olmalıdır.
Bir işlev, bağımsız değişken iletilmeden de çağrılabilir.
İade Beyanı
Return ifadesi, bir işlevin yürütülmesini sonlandırır ve çağıran işleve bir değer döndürür. Program kontrolü, return ifadesinden sonra çağıran işleve aktarılır.
Yukarıdaki örnekte, sonuç değişkeninin değeri ana işleve döndürülür. main()
Fonksiyondaki toplam değişkenine bu değer atanır.
Dönüş ifadesinin sözdizimi
dönüş (ifade);
Örneğin,
dönüş a; dönüş (a + b);
İşlevden döndürülen değer türü ile işlev prototipinde ve işlev tanımında belirtilen dönüş türü eşleşmelidir.
Bağımsız değişkenleri iletme ve bir işlevden değer döndürme hakkında daha fazla bilgi edinmek için bu sayfayı ziyaret edin.