如何在C++和Unix中获得堆栈溢出?

cgl*_*cet 2 c++ unix

我想知道如何通过一个简单的例子来获得堆栈溢出错误,例如:

int recursSum (int n)
{
   return (n==1)? 1:n+recursSum(n-1);
}
Run Code Online (Sandbox Code Playgroud)

我问这个愚蠢的问题,因为我只有一些Segmentation错误,即使有一个空函数调用自己...

我是否遗漏了某些东西,或者是否有任何保护或阻止我这样做的事情?

Tev*_*o D 6

分段错误意味着内存保护启动并阻止您访问您没有的内存.这可能由于各种原因而发生,但是指出的一个原因是堆栈溢出(将堆栈溢出到其他一段内存中).