Parametr (informatyka)
Parametr (parametr formalny) - element składni w określonym języku programowania, umożliwiający komunikację pomiędzy podprogramem wywołanym, a programem wywołującym[1]. Parametry deklaruje się wraz z deklaracją określonego podprogramu w jego nagłówku.[2]
Spis treści |
[edytuj] Funkcje parametru
Parametrem jest określony, zadeklarowany i zdefiniowany w programie (kodzie źródłowym), element (identyfikator), umożliwiający przekazanie argumentu do podprogramu oraz wyniku z podprogramu do zadania wywołującego podprogram (nadrzędnego)[1]. Parametr może zostać zdefiniowany dla podprogramu lub programu. W tym drugim przypadku parametr służy do komunikacji danego programu (procesu) z systemem operacyjnym lub innym programem wywołującym.[3]
[edytuj] Deklaracja i definicja parametru
Parametry zwykle, w większości języków programowania, deklaruje się i definiuje wraz z deklaracją podprogramu. Typowym sposobem jest utworzenie listy parametrów w nawiasie po nazwie podprogramu.[2] Tu najczęściej następuje zdefiniowanie atrybutów parametrów (np. typu).
Przykład w języku Pascal[4]:
{ Pascal } function Sum(a, b : integer):integer; begin Sum:=a+b end;
Przykład w języku C[5]:
/* C */ int Sum(a, b) int a,b; { return a+b; }
W powyższych przykładach zadeklarowano i zdefiniowano parametry a i b. W Pascalu deklaracja i definicja występuje razem[4], w języku C w nagłówku zadeklarowano parametry pod nagłówkiem a przed nawiasem otwierającym instrukcję blokową funkcji Sum, zdefiniowano parametry jako dane typu int (dotyczy pierwszych wersji języka C, w póniejszych standardach dopuszczono obie formy delkaracji parametrów).
[edytuj] Skojarzenie argumentu z parametrem
Parametr w podprogramie reprezentuje określoną wartość lub komórkę pamięci umożliwiającą komunikację z programem nadrzędnym. W momencie wywołania podprogramu następuje skojarzenie argumentu przekazywanego do podprogramu z odpowiednim parametrem. Skojarzenie takie dokonywane jest w wyniku wykonania instrukcji wywołania lub wywołania funkcji w wyrażeniu. Istnieją różne sposoby kojarzenia argumentów z parametrami[1].
[edytuj] Różne rozwiązania
W różnych językach programowania ich twórcy stosowali różne rozwiązania związane z parametrami.
[edytuj] Zmienna lista argumentów
W niektórych językach programowania lub ich konkretnych implementacjach istnieje możliwość przekazywania zmiennej liczby argumentów do podprogramu. Aby umożliwić odczyt w podprogramie wartości z listy argumentów o zmiennej ich liczbie definiuje się parametr wskazujący na taką listę, a w deklaracji podprogramu umieszcza często symbol informujący kompilator, że podprogram może być wywoływany ze zmienną liczbą argumentów.
[edytuj] Stos zamiast parametrów
Specyfika niektórych języków programowania, np. Forth[6], powoduje, że do przekazywania argumentów do podprogramu używa się stosu zamiast parametrów. Podprogram odczytuje wartość ze stosu, która musi zostać tam umieszczona przed wywołaniem podprogramu. Jedynie wypracowany styl pisania programów w tym języku, powoduje, że w kodzie źródłowym specyfikuje się parametry w wartość zwracaną, np.:
: Sum ( a, b -- a, b, c ) dup rot dup rot + ;
Lecz powyższa specyfikacja parametrów a i b oraz rezultatu a, b, c, jest tylko eleganckim stylem programowania, konwencją dobrowolnie stosowaną przez programistów, gdyż napis "( a, b -- a, b, c )" jest jedynie komentarzem.
[edytuj] Zobacz też
Przypisy
- ↑ 1,0 1,1 1,2 Michael Marcotty, Henry Ledgord, W kręgu języków programowania, tłumaczenie: Krysyna Jerzykiewicz, Wydawnictwa Naukowo-Techniczne, Warszawa 1980, Seria: Biblioteka Inżynierii Oprogramowania, ISBN 83-204-1342-7
- ↑ 2,0 2,1 John E. Nicholls, Strukrura języków programowania, Wydawnictwa Naukowo-Techniczne, Warszawa 1980, Seria: Informatyka, ISBN 83-204-0246-8
- ↑ Andrzej Marciniak, Borland Pascal 7.0, Wyd. Nakom, Poznań 1994 r., seria: Biblioteka Użytkownika Mikrokomputerów ISBN 83-85060-53-7, ISSN 0867-6011
- ↑ 4,0 4,1 Michał Iglewski, Jan Madey, Stanisław Matwin, Pascal. Język wzorcowy – Pascal 360., Wydawnictwa Naukowo-Techniczne, Warszawa 1984, wydanie trzecie – zmienione, Seria: Biblioteka Inżynierii Oprogramowania, ISBN 83-204-0597-1
- ↑ Jan Bielecki, Turbo C z grafiką na IBM PC, Wydawnictwa Naukowo-Techniczne, Warszawa 1990, Seria: Mikrokomputery, ISBN 83-204-1101-7
- ↑ Jan Bielecki, Język FORTH, Wydawnictwa Naukowo-Techniczne, Warszawa 1988, Seria: Mikrokomputery, ISBN 83-204-0930-6