5. Własne funkcje
Podprogramy dzielimy na:
Funkcje - podprogramy, które mają za zadanie wykonać pewne zadanie na danych wejściowych i zwrócić wynik.
Procedury - podprogramy, które nie zwracają żadnych wartości.
Przykład podprogramów, których zapewne używałeś wcześniej:
Procedura - inicjator generatora liczb pseudolosowych: srand(time(NULL));
Funkcja losująca: int x = rand();
Słowo kluczowe return - zwracanie wartości, kończy podprogram i pozwala przekazać wynik do funkcji wywołującej. Wewnątrz funkcji wywołującej, funkcja wywoływana ma zwracaną wartość w swojej nazwie.
float kwadrat(float a)
{
return a*a;
}
int main()
{
cout << kwadrat(3) + kwadrat(4);
}
Parametry formalne - argumenty wejściowe, które na swoje potrzeby definiuje funkcja w nagłówku
Parametry aktualne - dane/parametry dla których wywołujemy daną funkcję
Sposoby przekazywania parametrów do podprogramu:
- przez wartość (funkcja tworzy kopię na własne potrzeby, zatem oryginał pozostaje nienaruszony)
- przez adres (funkcja otrzymuje wskaźnik do oryginału, nie tworzy kopii)
Zasięg zmiennych:
- lokalne - widoczne tylko wewnątrz funkcji i procedur
- globalne - widoczne we wszystkich podprogramach