Czym naprawdę jest rekursja i wyjaśnienie wyników tego programu? [Zamknięte]
Naprawdę nie mogę zrozumieć tego kodu. Kiedy funkcja wywołuje się sama, co naprawdę się dzieje? Jest to związane z koncepcją stosu, wiem, ale wciąż nie mogę rozwiązać tych pytań.
#include<stdio.h>
fun(int);
main()
{
int x=3;
fun(x);
}
fun(int a)
{
if(a<0)
{
fun(--a); // what happens when function calls itself
printf("%d",a);
fun(--a);
}
}
Proszę wyjaśnić kolejność zdarzeń, które wystąpią w tym czasie.