Következő: 15.50.10 PÉLDÁK
Fel: 15.50 awk(1)
Előző: 15.50.8.14 Sztring konstansok
  Index
Az awk függvényei a következőképpen definiálandók:
function név(paramáterlista){ utasítások }
A függvények végrehajtása akár mintából, akár tevékenységből való
meghívásukkor történik meg. A függvényhívásokban megadott aktuális paraméterek
a függvényekben deklarált formális paramétereknek adnak konkrét értéket. A
tömbök átadása hivatkozás szerinti, a többi paraméteré érték szerinti. Mivel
a függvények eredetileg nem voltak az awk nyelv részei, a lokális változók
eléggé suta módon adhatók meg: a paraméterlistában extra paraméterekként
deklarálandók. A konvenció az, hogy a paraméterlistában a lokális változókat
extra space-ekkel választják el a valódi paraméterektől. Például:
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.
1999-09-17