Nagłówek podprogramu, jeżeli występuje wcześniejsza, odrębna jego deklaracja (za pomocą prototypu), może w definicji: mieć postać identyczną z prototypem zawartym w deklaracji (przy czym identyczność ta może nie dotyczyć nazw identyfikatorów poszczególnych parametrów podprogramu), mieć postać inną – uproszczoną, a pominięte szczegóły nagłówka pobierane są przez translator z deklaracji.

Przykład w Turbo Pascalu: unit m01; interface { Pełna postać nagłówka podprogramu - deklaracja w interfejsie modułu } procedure pr_1(var a : integer; b : char); implementation { Uproszczona postać nagłówka podprogramu w jego definicji } procedure pr_1; { deklaracja obiektów lokalnych } begin { treść podprogramu } end; end.

Specjalne pliki deklaracji stosowane w takich językach programowania jak C, C++ i pochodnych, noszą w nomenklaturze informatycznej i w literaturze przedmiotu nazwę plików nagłówkowych, gdyż są stosowane do definiowania między innymi bibliotek podprogramów. Plik taki składa się właśnie z deklaracji podprogramów w postaci nagłówków podprogramów (prototypów).