Sun*_*i86 0 c++
可能重复: 递归main() - 为什么会出现段错误?
如果我调用没有任何参数的递归函数然后发生stackoverflow错误,那么这背后的原因是什么
sha*_*oth 7
这是特定于实现的,但在许多平台上使用.当函数需要返回时,处理器需要知道它的确切位置 - 所谓的返回地址.
在调用函数之前,需要存储该返回地址.在许多实现中,程序堆栈用于存储返回地址以及用于存储参数.因此,即使没有参数,函数程序仍然使用堆栈,并且过于递归会导致堆栈溢出.
Joh*_*web 5
没有参数?那你的终止条件在哪里?
void infinity() { infinity(); }
归档时间:
15 年,8 月 前
查看次数:
1826 次
最近记录:
8 年,10 月 前