Parametr zachowuje się więc jak zmienna lokalna o nadanej w momencie wywołania podprogramu wartości początkowej, równej wartości przekazywanego argumentu, a po zakończeniu podprogramu argument zachowa ostatnio nadaną parametrowi wartość.
Przykładowe języki programowania: Ada (in out).
Argumenty przekazywane przez referencję Argumenty przekazywane przez referencję (przez zmienną, przez adres), to nałożenie zmiennej reprezentowanej przez parametr na zmienną reprezentowaną przez argument. Każda zmiana wartości parametru oznacza w rzeczywistości zmianę wartości skojarzonego z nim argumentu. Różnica z przekazywaniem argumentu przez wartość i wynik polega więc na tym, że w tym drugim przypadku istnieje zmienna lokalna, na której wykonywane są wszystkie operacje, przy przekazywaniu przez referencję wszystkie operacje wykonywane są bezpośrednio na argumencie.
Przykładowe języki programowania: C/C++, Pascal (var), Modula-2, PL/I, COBOL, Fortran.
Argumenty przekazywane przez nazwę Ten sposób oznacza użycie argumentu w miejscu parametru, w takiej postaci, w jakiej wystąpił w miejscu wywołania.