 
 
 
 
 
  
 
 
function f(p, q, a, b) \# a és b lokális
\{
\dots..
\}
/abc/ \{ \dots ; f(1, 2) ; \dots \}
A függvényhívás bal oldali zárójelének közvetlenül kell követnie a
függvénynevet, whitespace nem lehet közöttük. Ez a konkatenációs operátorral
való összekeverés elkerülése miatt van így. A megkötés nem vonatkozik a fent
felsorolt beépített függvényekre. A függvények hívhatják egymást és lehetnek
rekurzívak. A lokális változóként használt függvényparaméterek üres sztring
és zéró számértékkel inicializálódnak a függvényhívás során. Ha a -lint
opció meg van adva, a gawk fordítási és nem futási időben figyelmeztet a
definiálatlan függvények hívása esetén. Futási időben egy definiálatlan
függvénymeghívása fatális hiba. A func kulcsszó használható a function helyén.