誰か、以下のプログラムでどれくらい大きな数字が表示されるかわかる人居ませんか。
実際に動かしてみると止まる気配がありません。
mainのfの引数を0にしたときは2,1にしたときは4,2にしたときは14が表示されました。

#include<stdio.h>

unsigned long long x=1;

void f(unsigned long long a)
{
unsigned long long i;
x++;
if(a--==0)return;
for(i=x;i>0;i--)f(a);
}

void main()
{
f(3);
printf("%lld\n",x);
}