FONKSİYONLAR
Fonksiyonlar kompleks bir işi parçalara bölerek hem daha kolay yapmamızı hemde daha sonra lazım olunca tekrar tekrar kullanmamızı sağlarlar.
Fonksiyonları kısaca şu şekilde yazarız:
tür fonksiyonadı(parametreler)
{
komutlar;
}
Örnek üzerinden işlersek daha kolay olacak.
#include "stdafx.h"
#include<iostream> //Temel giriş-çıkış fonksiyonları için
#include <clocale> // setlocale kullanımı için
using namespace std; //std namespace deki metotları kullanmak için
void dizisay(char d[50]) /*Gönderilen değerleri alması lazım hangi değerleri yolladıysan
onun türüyle birlikte yazarak alıyoruz.*/
{
int sayac = 0, b = 0;
while (d[b] != '\0')
{
b++;
sayac++;
}
cout << "Dizinizde bulunan harf sayısı....: " << sayac<<endl;
}
int main()
{
setlocale(LC_ALL, "TURKISH");
char d[50];
cout << "Cümle giriniz...: " ;
gets_s(d); /* cin komutundan farkı enter tuşuna basılıncaya kadar girilen her şeyi kaydeder, cin komutu ise boşluk yada enter tuşuna basılıncaya kadar değer alıyordu.*/
dizisay(d); /*Fonksiyonu çağırırken fonksiyonun ismini yazıp parantezin içine parametreleri yazıyoruz.*/
system("pause");
return 0;
}
----------------------------------------------------------------------------------------------------------
/* İlk örneğimizde prototip tanımlamaya ihtiyacımız yoktu çünkü: fonksiyonumuz main'in üstündeydi, şimdi fonksiyonumuzu mainin altına aldığımızda neler yapmamız gerekli ona bakalım.*/
#include "stdafx.h"
#include<iostream> //Temel giriş-çıkış fonksiyonları için
#include <clocale> // setlocale kullanımı için
using namespace std; //std namespace deki metotları kullanmak için
void dizisay(char d[50]); /*Fonksiyonumuzu main'in altında yazdığımızda prototipini yazmamız lazım. */
#include<iostream> //Temel giriş-çıkış fonksiyonları için
#include <clocale> // setlocale kullanımı için
using namespace std; //std namespace deki metotları kullanmak için
void dizisay(char d[50]); /*Fonksiyonumuzu main'in altında yazdığımızda prototipini yazmamız lazım. */
int main()
{
setlocale(LC_ALL, "TURKISH");
char d[50];
cout << "Cümle giriniz...: ";
gets_s(d);
dizisay(d);
system("pause");
return 0;
}
void dizisay(char d[50])
{
int sayac = 0, b = 0;
while (d[b] != '\0')
{
b++;
sayac++;
}
cout << "Dizinizde bulunan harf sayısı....: " << sayac<<endl;
}
Burada küçük bir örnek olarak gördük. Sonraki derslerimizde daha kompleks programlar yazarken fonksiyonların ne kadar önemli olduğunu anlayacağız. Burada işlemediğimiz bir konu olan referans ile çağırma var, bu konuyu bir sonraki konuyla birlikte işleyeceğiz.
Not: Yukarıdaki bütün kodlar Visual Studio da yazılmıştır. Kodları direkt olarak kopyalayarak
çalıştırabilirsiniz.