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ącymMichael Marcotty, Henry Ledgord, W kręgu języków programowania, tłumaczenie: Krystyna Jerzykiewicz, Wydawnictwa Naukowo-Techniczne, Warszawa 1980, Seria: Biblioteka Inżynierii Oprogramowania, . Parametry określa się wraz z deklaracją określonego podprogramu, w jego nagłówkuJohn E. Nicholls, Struktura języków programowania, Wydawnictwa Naukowo-Techniczne, Warszawa 1980, Seria: Informatyka, .

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 tenże podprogram (nadrzędnego). 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ącymAndrzej Marciniak, Borland Pascal 7.0, Wyd. Nakom, Poznań 1994 r., seria: Biblioteka Użytkownika Mikrokomputerów , ISSN 0867-6011.

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. Tu najczęściej następuje zdefiniowanie atrybutów parametrów (np. typu).

Przykład w języku PascalMichał 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, : { Pascal } function Sum(a, b : integer):integer; begin Sum:=a+b end;

Przykład w języku CJan Bielecki, Turbo C z grafiką na IBM PC, Wydawnictwa Naukowo-Techniczne, Warszawa 1990, Seria: Mikrokomputery, : /* 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, 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 deklaracji parametrów).

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.

Różne rozwiązania W różnych językach programowania ich twórcy stosowali różne rozwiązania związane z parametrami.

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.

Stos zamiast parametrów Specyfika niektórych języków programowania, np. ForthJan Bielecki, Język FORTH, Wydawnictwa Naukowo-Techniczne, Warszawa 1988, Seria: Mikrokomputery, , 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.

Zobacz też Podprogram Argument Inicjalizacja parametrów jako zmiennych

Przypisy

Kategoria:Konstrukcje programistyczne