Menu
Coddy logo textTech

Fonksiyon Prototipleri

Coddy'nin C Journey'sinin Fundamentals bölümünün bir parçası — ders 51 / 63.

C dilinde, bir fonksiyonu kullanmadan önce bildirebiliriz. Bir fonksiyon prototipi, asıl fonksiyon tanımlanmadan önce derleyiciye fonksiyonun adı, parametreleri ve dönüş türü hakkında bilgi verir.

İki tam sayıyı toplayan bir fonksiyon için bir fonksiyon prototipi oluşturun:

int add(int a, int b);

Ardından fonksiyonu tanımlayın:

int add(int a, int b) {
    return a + b;
}

Prototipe genellikle main'in üzerindedir, fonksiyonun kendisi ise main'in altındadır; böylece kod daha temiz görünür.


Artık bu fonksiyonu main içinde kullanabilirsiniz:

int main() {
    int result = add(5, 3);
    printf("%d", result);
    return 0;
}

Prototip olmadan, fonksiyonu tanımından önce çağırırsanız bir derleyici hatası alırsınız.

challenge icon

Görev

Kolay

Şunları yapan bir program oluşturun:

  1. İki tam sayı (length ve width) alan ve bir tam sayı döndüren calculateArea adında bir fonksiyon prototipi tanımlayan.
  2. Alanı (length × width) hesaplamak ve döndürmek için fonksiyonu uygulayan.
  3. Ana fonksiyonda, kullanıcıdan iki tam sayı alan, calculateArea fonksiyonunu çağıran ve sonucu yazdıran.

Kopya kağıdı

Bir fonksiyon prototipi, bir fonksiyonu tanımlanmadan önce bildirerek derleyiciye fonksiyonun adı, parametreleri ve dönüş türü hakkında bilgi verir:

int add(int a, int b);

Ardından fonksiyonu tanımlayın:

int add(int a, int b) {
    return a + b;
}

Prototip genellikle main fonksiyonunun üzerine yerleştirilirken, fonksiyon tanımı main fonksiyonunun altına yazılır:

int add(int a, int b);  // prototip

int main() {
    int result = add(5, 3);
    printf("%d", result);
    return 0;
}

int add(int a, int b) {  // tanım
    return a + b;
}

Prototip olmadan, bir fonksiyonu tanımından önce çağırmak derleyici hatasına neden olur.

Kendin dene

#include <stdio.h>

// Fonksiyon prototipinizi buraya yazın

int main() {
    // Değişkenleri tanımlayın ve okuyun
    
    // Fonksiyonunuzu çağırın ve sonucu buraya yazdırın
    
    return 0;
}

// Fonksiyonunuzu burada uygulayın
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Fundamentals bölümündeki tüm dersler