C++ Program Örnekleriyle Fonksiyonlar
Bir Fonksiyon Nedir? C++?
A işlev in C++ girdiyi alan, işleyen ve çıktı döndüren bir grup ifadeyi ifade eder. Bir işlevin arkasındaki fikir, tekrar tekrar yapılan ortak görevleri birleştirmektir. Farklı girişleriniz varsa aynı kodu bir daha yazmazsınız. İşlevi parametreler adı verilen farklı bir veri kümesiyle çağırmanız yeterlidir.
Her C++ programın en az bir işlevi vardır, main() işlevi. Kodunuzu farklı işlevlere bölebilirsiniz. Bu bölünme her fonksiyonun belirli bir görevi yerine getireceği şekilde olmalıdır.
İçerisinde birçok yerleşik fonksiyon bulunmaktadır. C++ standart kütüphane. Bu işlevleri programınızın içinde çağırabilirsiniz.
Neden işlevler kullanılmalı?
İşlevlerin kullanımıyla ilgili çok sayıda fayda vardır. Bunlar şunları içerir:
- Her işlev ilgili kodu bir araya getirir. Bu, programcıların kodu anlamasını kolaylaştırır.
- Fonksiyonlar kod tekrarını ortadan kaldırarak programlamayı kolaylaştırır.
- İşlevler kodun yeniden kullanımını kolaylaştırır. Programın farklı bölümlerinde ve hatta programın dışında bir görevi gerçekleştirmek için aynı işlevi çağırabilirsiniz.
Yerleşik İşlevler
In C++ kütüphane işlevleri yerleşiktir C++ işlevler. Bu işlevleri kullanmak için bunları doğrudan çağırmanız/çağrmanız yeterlidir. Fonksiyonları kendiniz yazmak zorunda değilsiniz.
Örnek 1:
#include <iostream> #include <cmath> using namespace std; int main() { double num, squareRoot; cout << "Enter number: "; cin >> num; squareRoot = sqrt(num); cout << "The square root of " << num << " is: " << squareRoot; return 0; }
Çıktı:
İşte kodun ekran görüntüsü:
Kod Açıklaması:
- İşlevlerini kullanmak için iostream başlık dosyasını programımıza ekleyin.
- İşlevlerini kullanmak için cmath kitaplığını ekleyin. İçinde tanımlanan sqrt() fonksiyonunu kullanmak istiyoruz.
- Sınıflarını çağırmadan kullanmak için std ad alanını kodumuza ekleyin.
- main() fonksiyonunu çağırın. Program mantığı bu fonksiyonun gövdesine eklenmelidir.
- İki adet double değişken tanımlayın: num ve squareRoot.
- Konsola bir miktar metin yazdırın. Metin kullanıcıdan bir sayı girmesini ister.
- Kullanıcı girişini klavyeden okuyun. Giriş, num değişkeninin değeri olacaktır.
- Bir sayının karekökünü hesaplayan sqrt() kütüphane fonksiyonunu çağırın. Num parametresini fonksiyona aktardık, yani num'un karekökünü hesaplayacak. Bu fonksiyon cmath kütüphanesinde tanımlanmıştır.
- Kullanıcı tarafından girilen sayıyı, karekökünü ve konsoldaki diğer bazı metinleri yazdırın.
- Program başarılı bir şekilde tamamlandıktan sonra değeri döndürmelidir.
- Main() işlevinin gövdesinin sonu.
Kullanıcı Tanımlı Fonksiyonlar
C++ programcıların kendi işlevlerini tanımlamalarına olanak tanır. Fonksiyonun amacı ilgili kodu gruplamaktır. Daha sonra koda benzersiz bir tanımlayıcı, işlev adı verilir.
Fonksiyon programın herhangi bir kısmından çağrılabilir/çağırılabilir. Daha sonra kendi bünyesinde tanımlanan kodu çalıştıracaktır.
Örnek 2:
#include <iostream> using namespace std; void sayHello() { cout << "Hello!"; } int main() { sayHello(); return 0; }
Çıktı:
İşte kodun ekran görüntüsü:
Kod Açıklaması:
- İşlevlerini kullanmak için iostream başlık dosyasını programımıza ekleyin.
- Sınıflarını çağırmadan kullanmak için std ad alanını kodumuza ekleyin.
- sayHello() adında kullanıcı tanımlı bir işlev oluşturun.
- sayHello() işlevi çağrıldığında konsola bir miktar metin yazdırın.
- sayHello() işlevinin gövdesinin sonu.
- main() fonksiyonunu çağırın. Program mantığı bu fonksiyonun gövdesine eklenmelidir.
- sayHello() adlı işlevi çağırın/çağırın.
- Program başarılı bir şekilde tamamlandıktan sonra değeri döndürmelidir.
- Main() işlevinin gövdesinin sonu.
İşlev Beyanı/Prototip
Main() işlevinden sonra kullanıcı tanımlı bir işlev tanımlarsanız, C++ derleyici bir hata döndürecektir. Bunun nedeni derleyicinin kullanıcı tanımlı fonksiyonun ayrıntılarını bilmemesidir. Ayrıntılar, adını, argüman türlerini ve dönüş türlerini içerir.
In C++, fonksiyon bildirimi/prototipi, gövdesi olmayan bir fonksiyonu bildirir. Bu, derleyiciye kullanıcı tanımlı fonksiyonun ayrıntılarını verir.
Bildirime/prototipe dönüş tipini, fonksiyon adını ve argüman tiplerini dahil ediyoruz. Bağımsız değişkenlerin adları eklenmez. Ancak bağımsız değişken adlarının eklenmesi hata oluşturmaz.
Fonksiyon Tanımı
İşlev bildiriminin amacı, C++ derleyiciye işlev adı, dönüş türü ve parametreler hakkında bilgi verir. Bir fonksiyon tanımı şunu söyler: C++ işlev gövdesi hakkında derleyici.
Sözdizimi
return_datatype function_name( parameters) { function body }
Yukarıdakilerden yola çıkarak, bir fonksiyon tanımının fonksiyon başlığı ve gövdesi vardır. Parametrelerin açıklaması aşağıda verilmiştir:
- return_datatype- Bazı işlevler değer döndürür. Bu parametre dönüş değerinin veri tipini belirtir. Bazı işlevler değer döndürmez. Bu durumda bu parametrenin değeri geçersiz hale gelir.
- işlev_adı- Bu, işlevin adıdır. İşlev adı ve parametreler işlev imzasını oluşturur.
- Parametreler- Bu, işlev parametrelerinin türü, sırası ve sayısıdır. Bazı fonksiyonların parametreleri yoktur.
- işlev gövdesi - bunlar işlevin ne yapacağını tanımlayan ifadelerdir.
İşlev Çağrısı
Bir işlevin belirtilen görevi gerçekleştirmesi ve çıktıyı döndürmesi için çağrılması gerekir. Bir işlevi çağırdığınızda, kendi gövdesine eklenen ifadeleri çalıştırır.
Bir program kendi adıyla anılır. Fonksiyon parametre alıyorsa, bunların değerleri çağrı sırasında iletilmelidir. Hizmet hiçbir parametre almıyorsa çağrı sırasında herhangi bir değer iletmeyin.
Argümanları Geçmek
In C++Bir bağımsız değişken/parametre, çağrı sırasında bir işleve iletilen verilerdir. Değerler ilgili değişkenlere göre başlatılmalıdır.
Bir işlevi çağırırken argümanların sayısı eşleşmelidir. Bu, ilettiğiniz değerlerin parametre sayısına eşit olması gerektiği anlamına gelir. Yine değerlerin tür açısından da parametrelerle eşleşmesi gerekir. İlk parametre bir tam sayı ise ona iletilen değerin bir tam sayı olması gerekir.
Fonksiyon parametrelerine varsayılan değerler atanabilir. İşlev çağrısı sırasında parametre için bir değer iletmezseniz varsayılan değer kullanılacaktır.
Örnek 3: Bir Fonksiyon Nasıl Yazılır ve Çağırılır
#include <iostream> using namespace std; int addFunc(int, int); int main() { int x, y, sum; cout << "Enter two numbers: "; cin >> x >> y; sum = addFunc(x, y); cout <<"The sum of "<<x<< " and " <<y<<" is: "<<sum; return 0; } int addFunc(int num1, int num2) { int addFunc; addFunc = num1 + num2; return addFunc; }
Çıktı:
İşte kodun ekran görüntüsü:
Kod Açıklaması:
- İşlevlerini kullanmak için iostream başlık dosyasını programımıza ekleyin.
- Sınıflarını çağırmadan kullanmak için std ad alanını kodumuza ekleyin.
- İki tam sayı parametresi alan addFunc() adında bir işlev bildirin. Bu, fonksiyon prototipini oluşturur.
- main() fonksiyonunu çağırın. Program mantığı bu fonksiyonun gövdesine eklenmelidir.
- Üç tamsayı değişkeni bildirin: x, y ve toplam.
- Konsola bir miktar metin yazdırın. Metin kullanıcıdan iki sayı girmesini ister.
- Klavyeden kullanıcı girişini okuyun. Kullanıcı x ve y değişkenleri için boşlukla ayrılmış iki sayı girmelidir.
- addFunc() fonksiyonunu çağırın ve ona x ve y parametrelerini iletin. Fonksiyon bu parametreler üzerinde çalışacak ve çıktıyı toplam değişkenine atayacaktır.
- Konsolda x, y ve sum değişkenlerinin değerlerini diğer metinlerle birlikte yazdırın.
- İşlev başarıyla tamamlandıktan sonra değeri döndürmelidir.
- Main() işlevinin gövdesinin sonu.
- Fonksiyon tanımı. addFunc() fonksiyonunu tanımlıyoruz. Fonksiyonun { } bünyesinde ne yapacağını belirteceğiz.
- addFunc adında bir tamsayı değişkeni bildirmek.
- num1 ve num2 parametrelerinin değerlerinin toplanması ve sonucun addFunc değişkenine atanması.
- addFunc() işlevi, addFunc değişkeninin değerini döndürmelidir.
- Fonksiyon gövdesinin sonu, yani fonksiyon tanımı.
ÖZET
- Bir fonksiyon C++ ilgili kodu tek bir kodda gruplamanıza yardımcı olur.
- İşlevler kodun yeniden kullanımını kolaylaştırır.
- Benzer kodu tekrar tekrar yazmak yerine, onu bir fonksiyon halinde gruplamanız yeterlidir. Daha sonra işlevi kodun herhangi bir yerinden çağırabilirsiniz.
- Fonksiyonlar kütüphane veya kullanıcı tanımlı olabilir.
- Kütüphane işlevleri, çeşitli yerleşik işlevlerdir. C++ fonksiyonlar.
- Kütüphane fonksiyonlarını kullanmak için, tanım kütüphanesini eklemeniz ve fonksiyonu çağırmanız yeterlidir. İşlevi tanımlamazsınız.
- Kullanıcı tanımlı işlevler, kullanıcı tanımlı işlevler olarak tanımladığınız işlevlerdir. C++ programcı.
- Bir işlev bildirimi, derleyiciye işlevin adı, dönüş türü ve parametre türleri hakkında bilgi verir.
- Bir işlev tanımı, işlevin gövdesini ekler.
- Bir fonksiyon parametre alıyorsa, bunların değerleri fonksiyon çağrısı sırasında iletilmelidir.