Cpp de Fonksiyonlar

Geriye değer döndürmeyen basit fonksiyon
#include <cstdlib>
#include <iostream>
using namespace std;
void CicekYap(){
printf(“n %c%c%c “, 219,219,219);
printf(“n %c%c%c%c%c%c%c% “, 219,219,219, 219,219,219, 219);
printf(“n %c%c%c n”, 219,219,219);
}
int main(int argc, char *argv[])
{
for(int i=0; i<10; i++){
CicekYap();
}
cout<<“n”;
system(“PAUSE”);
return EXIT_SUCCESS;
}
Cpp deFonksiyonlar
Geriye değer döndüren fonksiyonlar
#include <cstdlib>
#include <iostream>
using namespace std;
void Topla(int Sayi1, int Sayi2, int Sayi3){
cout<<“n”<<Sayi1+Sayi2+Sayi3;
}
int ToplaVeGeriyeDondur(int Sayi1, int Sayi2, int Sayi3){
char Isim[]=”hebelehube”;
//return Isim; Calismaz cunku fonksiyonun tipi int donen deger char
return (Sayi1+Sayi2+Sayi3);
}
int main(int argc, char *argv[])
{
//Geriye deger don
Topla(34, 54, 67);
//Geriye deger donduren
int Toplam=ToplaVeGeriyeDondur(23, 43, 53);
cout<<“n”<<Toplam;
cout<<“n”;
system(“PAUSE”);
return EXIT_SUCCESS;
}
Cpp deFonksiyonlar
Geriye değer döndürmeyen (Pointersal) basit fonksiyon
#include <cstdlib>
#include <iostream>
using namespace std;
int Fonksiyon1(int *GelenSayi){
*GelenSayi+=10;
}
int main(int argc, char *argv[])
{
int Sayi=0;
//printf(“Sayının degeri %d”, Sayi);
cout<<“Fonksiyondan Once Sayinin degeri “<<Sayi<<“n”;
//Fonksiyon cagriliyor
Fonksiyon1(&Sayi);
cout<<“Fonksiyondan Sonra Sayinin degeri “<<Sayi<<“n”;
//cout<<“Fonksiyondan Sonra Sayinin Karesi “<<Karesi<<“n”;
system(“PAUSE”);
return EXIT_SUCCESS;
}
Cpp de Fonksiyonlar
Yukardaki Uygulamanın Geriye değer döndüren basit fonksiyonla yapılması
#include <cstdlib>
#include <iostream>
using namespace std;
int Fonksiyon1(int GelenSayi){
GelenSayi+=10;
return (GelenSayi);
}
int main(int argc, char *argv[])
{
int Sayi=0;
//printf(“Sayının degeri %d”, Sayi);
cout<<“Fonksiyondan Once Sayinin degeri “<<Sayi<<“n”;
//Fonksiyon cagriliyor
int Karesi;
Sayi=Fonksiyon1(Sayi);
cout<<“Fonksiyondan Sonra Sayinin degeri “<<Sayi<<“n”;
//cout<<“Fonksiyondan Sonra Sayinin Karesi “<<Karesi<<“n”;
system(“PAUSE”);
return EXIT_SUCCESS;
}
Geriye değer döndürmeyen (Pointer) ancak iki farklı değer üreten fonksiyon ( Call by Reference )
#include <cstdlib>
#include <iostream>
using namespace std;
int Fonksiyon1(int *GelenSayi, int *GelenSayiKaresi){
*GelenSayi+=10;
//*GelenSayilar arasındaki birinci çarpı matematiksel operator;
*GelenSayiKaresi=*GelenSayi**GelenSayi;
}
int main(int argc, char *argv[])
{
int Sayi=0, Karesi=0;
//printf(“Sayının degeri %d”, Sayi);
cout<<“Fonksiyondan Once Sayinin degeri “<<Sayi<<“n”;
cout<<“Fonksiyondan Once Sayinin Karesi “<<Karesi<<“n”;
//Fonksiyon cagriliyor
Fonksiyon1(&Sayi, &Karesi);
cout<<“Fonksiyondan Sonra Sayinin degeri “<<Sayi<<“n”;
cout<<“Fonksiyondan Sonra Sayinin Karesi “<<Karesi<<“n”;
system(“PAUSE”);
return EXIT_SUCCESS;
}
Cpp de Fonksiyonlar
Fonksiyon parametresi olarak İşagretçi (Pointer) Kullanımı
#include <cstdlib>
#include <iostream>
using namespace std;
int Degistir(int* SayiAdres);
int main(int argc, char *argv[])
{
int Sayi=10;
int *SayininAdresi=&Sayi;
int Sonuc=0;
Sonuc=Degistir(SayininAdresi);
cout<<“Sonuc “<<Sonuc<<” Sayi “<<Sayi<<“n”;
system(“PAUSE”);
return EXIT_SUCCESS;
}
int Degistir(int *SayiAdres){
*SayiAdres*=2;
return *SayiAdres;
}
Veya
#include <cstdlib>
#include <iostream>
using namespace std;
int Degistir(int* SayiAdres);
int main(int argc, char *argv[])
{
int Sayi=10;
int *SayininAdresi=&Sayi;
int Sonuc=0;
//Sonuc=Degistir(SayininAdresi);
Degistir(SayininAdresi);
Sonuc=Sayi;
cout<<“Sonuc “<<Sonuc<<” Sayi “<<Sayi<<“n”;
system(“PAUSE”);
return EXIT_SUCCESS;
}
int Degistir(int *SayiAdres){
*SayiAdres*=2;
//return *SayiAdres;
}
Cpp de Fonksiyonlar