标签: c function recursion
威尔:
int foo(); int foo() { return foo(); }
永久循环或只运行两次函数(一次隐式,一次一次终止)。
答案 0 :(得分:5)
是的,foo()是一个递归函数,导致无限循环。
如果你的编译器优化尾递归,那么它很可能会一直持续到你杀死它为止。如果编译器没有优化尾递归,那么最终会溢出堆栈和/或耗尽内存。
答案 1 :(得分:2)
是的,它是一个没有任何基本情况的递归函数。因此它永远不会正常终止。