我怎么能得到一个堆栈溢出在c++和Unix
How can I get a stack overflow in C++ and Unix?
我想知道如何获得堆栈溢出错误与一个简单的例子,如:
int recursSum (int n)
{
return (n==1)? 1:n+recursSum(n-1);
}
我问那个愚蠢的问题,因为我只有一些分割错误,即使有一个空函数调用自己…
我错过了什么,还是有任何保护或阻止我这样做的东西?
段错误意味着内存保护启动并阻止您访问没有可用的内存。这可能有多种原因,其中一个原因是堆栈溢出(将堆栈溢出到其他内存段)。
如果使用负或0整数参数调用函数,则将面临无限递归。然而,编译器可能会对特定的函数进行尾部调用优化,除非在调试模式下,否则您永远不会看到堆栈溢出。分割错误在其他地方
堆栈溢出是一种分段错误,它看起来就像你的系统刚刚输出了一个通用错误。
您可以在这里阅读更多内容:http://en.wikipedia.org/wiki/Segmentation_fault
Foo()
{
float f[1024];
Foo();
}
f是一个虚拟变量,可以帮助快速填充堆栈。
相关文章:
- 在 leetcode 上提交解决方案时出现堆栈缓冲区溢出错误
- 我的 int main() 中出现堆栈溢出错误
- C++ 对象数组堆栈溢出
- 有没有一种方法可以捕获进程中的堆栈溢出?C++Linux
- 对象接收堆栈溢出异常 c++ 的排序向量
- 将公共递归转换为尾递归,因为大型输入的堆栈溢出
- C++ 中递归期间的堆栈溢出
- 启动 dll 时 C# 环境堆栈溢出
- 在C++中使用数组时如何防止堆栈溢出?
- 如何修复递归函数导致的堆栈溢出错误?C++
- 当我尝试为结构分配新指针时出现堆栈溢出错误
- 为什么析构函数无休止地调用自己(导致堆栈溢出)?
- 为什么堆栈溢出?如有建议,不胜感激
- 主函数执行时C++堆栈溢出异常
- 如何在不导致堆栈溢出的情况下计算非常大的数字和很小的 HCF.我正在使用欧几里得算法
- 递归克隆图时的堆栈溢出
- 防止 CRTP 特征码在"pure virtual"调用中堆栈溢出
- 静态数组溢出堆栈(seg 错误 11)仅在类定义内部时,否则不会..?
- 使用递归的溢出堆栈
- c++中栈溢出和分段错误的危险