递归调用的次数限制

来源:互联网 发布:网络上赌博被骗怎么办 编辑:程序博客网 时间:2024/05/01 08:13

递归调用的次数受到程序堆栈大小的限制,以下代码可以进行测试。

 

void TestRecur()
{
 int a[1024];    //在栈上分配

 static int count = 0;

 cout << count << " " << flush;
 count++;

 

 if(count < 1000)
 {
  __try
  {
   TestRecur();
  }
  __except(1)
  {
   cout << "/nerror code: " << _exception_code();
   exit(1);
  }
 }

}

 

int main()

{

 TestRecur();

}

 

VisualStudio默认的栈空间是1M,可以更改默认栈空间:

项目-》属性-》配置属性-》链接器-》系统-》堆栈保留大小

原创粉丝点击