- umožňuje řešení problému na podproblémy
float f2c(float fahr);
- musí být deklarována před použitím
- předběžná deklarace
- deklarace a definici zároveň
- argumenty se vždy předávají hodnotou
- pořadí předávání argumentů funkci není definováno
- kód, který lze použít i v jiných programech