我搞不懂自己的程序怎么会栈溢出
#include<stdio.h>void loop(int *p,int *k,int x,int y)
{if(y>1)
{
if(p>k){p=k-3;}
if(*p==1){loop(p+1,k,x,y);}
if(x==3){*p=1;x=0;y--;}
loop(p+1,k,x+1,y);
}
}
int main()
{
int a[4]={0},z=4,c=1,*aa=a+3;
loop(a,aa,1,4);
for(int s=0;s<4;s++)
{
printf("%d",a[s]);
}
}