Autor: Dondu
Kurs języka C: Spis treści
Funkcje są podstawą języka C!
Są to wydzielone części programu, które wykonują zadane czynności przetwarzając podane im opcjonalnie dane tzw. argumenty. Funkcje po zakończeniu działania mogą (lecz nie muszą) zwracać jakieś dane.
Nawiązując do innych języków funkcje są odpowiednikami podprogramów, czy procedur.
Innymi słowy, to pracownicy specjaliści do określonych małych lub większych zadań. Zaletą funkcji jest możliwość umieszczenia w niej określonej (np. często wykorzystywanej) części kodu, a następnie wywoływanie (uruchamianie) funkcji w wielu różnych miejscach programu.
Z punktu widzenia programisty prawie każdy program należy dzielić na mniejsze zadania realizowane w postaci funkcji. W ten sposób program staje się krótki i czytelny.
Funkcje są bardzo elastyczne, czyli można je definiować i używać na wiele sposobów. Więcej na ten temat znajdziesz w pozostałych tematach rozdziału o funkcjach.
Definiowanie funkcji
Aby funkcję "powołać do życia" należy ją zdefiniować w ten sposób:
typ NazwaFunkcji (argumenty)
{
... jakiś kod do wykonania
}
{
... jakiś kod do wykonania
}
gdzie:
typ
Określa typ danej jaką zwraca funkcja po jej wykonaniu. Typ danej może być dowolnym typem danych opisanych szczegółowo w temacie: Typy danych
Jeżeli funkcja nie ma zwracać danej, zamiast podawania typu użyjesz słowa kluczowego void, o którym piszę w dalszej części tego artykułu.
NazwaFunkcji()
Dowolna nazwa jaką sobie wymyślisz jednakże podlegająca takim samym zasadom jak nazwy zmiennych, o których możesz się dowiedzieć w temacie: Zmienne - nazwy i deklaracja
Do nazwy funkcji należy dodać nawiasy zwykłe - otwierający i zamykający.
argumenty
To dane przekazywane do funkcji przez program ją wywołujący (nadrzędny).
Argumenty są opcjonalne, to znaczy, że mogą, ale nie muszą występować.
Argumenty umieszcza się pomiędzy nawiasami zwykłymi podczas definiowania funkcji.
Przykład najprostszego argumentu jakim jest pojedyncza zmienna, której także musimy podać typ np.:
(int ilosc_koni)
Jeżeli przekazujesz więcej niż jeden argument, należy oddzielić je od siebie przecinkami.
(int ilosc_koni, char licznik_krow, double temperatura)
Tak zdefiniowane i przekazane argumenty są dostępne wewnątrz funkcji jako zmienne o określonych przez Ciebie typach i nazwach.
Jeżeli funkcja nie ma mieć argumentów, zamiast nich użyjesz słowa kluczowego void, o którym piszę w dalszej części tego artykułu.
{ }
Nawiasy (klamrowe inaczej zwane sześciennymi) określające początek i koniec funkcji, czyli blok kodu z którego składa się funkcja. Zasady dotyczące bloków kodu poznasz na przykładzie: Zmienne lokalne blokowe
Oprócz powyższych informacji poznać musisz jeszcze dwa słowa kluczowe void oraz return.
void (ang. pustka, próżnia, pozbawiony czegoś)
To słowo kluczowe oznaczające brak wartości lub po prostu nic. W przypadku funkcji słowo to stosuje się:
- zamiast typu funkcji, gdy funkcja nie ma zwracać żadnej wartości,
- zamiast argumentów funkcji, gdy funkcja nie ma mieć żadnych argumentów.
return;
return JakasDana;
W zależności, którą z powyższych wersji instrukcji return użyjesz, służy ona do (odpowiednio):
- przerwania wykonywania funkcji,
- przerwania wykonywania funkcji i zwrócenia danej, o typie określonym w czasie definiowania funkcji.
Return może być umieszczony w dowolnym miejscu funkcji lub na jej końcu. Jeżeli w funkcji nie ma słowa return, to po zrealizowaniu kodu zawartego w funkcji następuje wyjście z niej tak, jakby wykonano return bez podania zwracanej danej.
Przykłady do wszystkich omawianych w tym artykule zagadnień, znajdziesz w pozostałych artykułach z rozdziału o funkcjach.
Kurs języka C: Spis treści
Nawiasy klamrowe nie kalmrowe...
OdpowiedzUsuńDziękuję za wskazanie literówki :)
Usuń