Recursivitatea se realizează cu ajutorul funcțiilor. Mecanismul care face posibilă recursivitatea derivă din modul de funcționare a acestora.
În momentul în care o funcție este apelată, se alocă memorie pe stivă pentru valorile parametrilor și ale variabilelor locare.
Această zonă de memorie rămâne alocată pe tot parcursul execuției apelului funcției, fiind eliberată la momentul revenirii în funcția apelantă.
Stiva nu este gestionată explicit de către programator, ci de către sistem.