我有以下递归方法。我得到一个错误堆栈溢出。它停在-9352。我的问题,堆栈溢出是否与无限循环相同?因为这将继续调用自己。
但是,如果我使用 while、until、do 等进行无限循环,它不会给我同样的堆栈溢出错误。它一直持续到我的系统内存不足。
这是使用 Ruby
def recursion(n)
print n
recursion(n-1)
end
recursion(3)
输出:
3
2
1
0
.
.
.
-9352 stack overflow stops