标签: stack-overflow
通常当程序因堆栈溢出而崩溃时,这意味着存在没有正确退出条件的递归调用。但还有其他方法可以让堆栈溢出吗?
答案 0 :(得分:0)
如果你在堆栈上分配,是的,它可能会发生,具体取决于语言。例如,使用C99函数alloca:它在手册页上特别说明:
alloca
所做的分配可能会超出堆栈的范围,甚至可能会进一步进入内存中的其他对象,而alloca()无法确定这样的错误。