Return
return - słowo kluczowe; zwraca się za jego pomocą wartość funkcji.
Wynik funkcji musi być tego samego typu co funkcja, czyli:
W przypadku próby zwrócenia wyniku innego typu niż funkcja kompilator zgłosi błąd:
Możliwe jest także zwrócenie wyniku w postaci innej niż zmienna, np.:
Return przydaje się też do zakończenia wykonywania dowolnej procedury (funkcji, która zwraca void)
W sekcji głównej programu (main) zadeklarowaliśmy zmienną wynik, do której przypisalismy wynik działania funkcji dodaj. Skąd wiadomo jaką liczbę zwróci funkcja? Właśnie do tego słuźy funkcja return. To dzięki niej funkcja może dać wynik.
Składnia
return zmienna
Wynik funkcji musi być tego samego typu co funkcja, czyli:
W przypadku próby zwrócenia wyniku innego typu niż funkcja kompilator zgłosi błąd:
int funkcja()
{
char a[] = "abcdefg";
return a; // powinien być zwrócony wynik typu int, więc kompilator pokaże błąd
}
{
char a[] = "abcdefg";
return a; // powinien być zwrócony wynik typu int, więc kompilator pokaże błąd
}
Możliwe jest także zwrócenie wyniku w postaci innej niż zmienna, np.:
Return przydaje się też do zakończenia wykonywania dowolnej procedury (funkcji, która zwraca void)
#include <iostream>
void sprawdz_wiek(int wiek)
{
if (wiek < 18) return;
// poniższa linijka zostanie tylko jeżeli wiek >= 18
std::cout << "Witaj dorosły człowieku!" << std::endl;
}
void sprawdz_wiek(int wiek)
{
if (wiek < 18) return;
// poniższa linijka zostanie tylko jeżeli wiek >= 18
std::cout << "Witaj dorosły człowieku!" << std::endl;
}
Przykład
#include <iostream>
int dodaj(int a,b)
{
int wynik = 0;
wynik = a + b;
return wynik;
}
int main()
{
int wynik = 0;
wynik = dodaj(2,3);
std::cout << wynik << endl;
return 0;
}
int dodaj(int a,b)
{
int wynik = 0;
wynik = a + b;
return wynik;
}
int main()
{
int wynik = 0;
wynik = dodaj(2,3);
std::cout << wynik << endl;
return 0;
}
W sekcji głównej programu (main) zadeklarowaliśmy zmienną wynik, do której przypisalismy wynik działania funkcji dodaj. Skąd wiadomo jaką liczbę zwróci funkcja? Właśnie do tego słuźy funkcja return. To dzięki niej funkcja może dać wynik.



Bo jak inaczej działało by to:
char znak = 'A';
if( znak == 65 )
std::cout << "Znak jest też cyfrą!!!\n";
Dzięki z góry.
Mój e-mail to: Kaban_os@yahoo.com
return nie tylko zwraca wartość:
void foo()
{
//...
return;
}
Można zwracać inny typ:
int foo()
{
char val = 5;
return val;
}