Az Octave-ban csak függvényeket lehet írni, amelyeket definiálhatunk direktben az Octave parancssorán, az Octave-val való interakció során, vagy egy külsõ fájlban és ugyanúgy hívhatók, mint a beépített függvények.
Egy függvény lehet visszatérési érték nélküli:
Az argumentumlista természetesen lehet üres is. Legtöbb esetben viszont
szeretnénk információt visszakapni a definiált függvényünktõl, az egyetlen
visszatérési értékkel rendelkezõ függvény szintakszisa:
Több programozási nyelvtõl eltérõen az Octave-ban lehetõség van olyan függvény
definiálására, amelynek több visszatérési értéke is van:
Példa egy ilyen több visszatérési értékkel rendelkezõ függvényre:
Az Octave képes meghatározatlan számosságú argumentum listát illetve visszatérési érték listát kezelni. Ez azt jelenti, hogy egy (...)-al jelölt üres listát írunk a megfelelõ lista helyére, s a függvény hívása után dõl el ennek tartalma. Ilyen esetekben beépített segédfüggvények segítségével határozhatjuk meg az argumentumok értékét, számát (nargout, va_start(), va_arg(), stb)
Octave-ban csak érték szerinti paraméterátadás van, vagyis minden paraméterrõl
egy helyi másolat jön létre. Ez azt jelenti, hogy a függvények paramétereinek
értékét nem lehet direkt módon a hívott függvényben megváltoztatni. Ennek
ellenére a fügvények esetén az értékek nem lesznek szükségtelenül lemásolva.
Például:
Az Octave lehetőséget ad függvények szabványos dokumentálására. A függvényt tartalmazó fájl elején, ## kezdetű sorokban kommentként egy copyright szerepelhet, majd egy üres sor után hasonló módon a függvény dokumentációja. Ha az első összefüggő kommentezett rész nem tartalmazza a Copyright szót, akkor azt tekinti az Octave a függvény dokumentációjának.
Ezek után következhet még több sor fejléc, amely ## fejlécnév: kezdetű sorokból áll, ahol a fejlécnév lehet például Author, amely után értelemszerűen a szerző neve szerepel. Szabványos fejlécnevek még:
Maintainer: a neve és elérhetősége annak, aki az adott függvényért felel, akit probléma esetén keresni lehet.
Created: fájl létrehozásának dátuma.
Version: verziószám.
Keywords: függvény funkciójához kapcsolódó kulcsszavak.
Az ilyen dokumentáció a beépített függvények dokumentációjához hasonlóan elérhető a help paranccsal.
Egy példa: