Very Deep or Infinite Recursion
The most common cause of stack overflow is excessively deep or infinite recursion. Languages like Scheme, which implement tail-call optimization, allow infinite recursion of a specific sort—tail recursion—to occur without stack overflow. This works because tail-recursion calls do not take up additional stack space.
An example of infinite recursion in C.
int foo { return foo; }The function foo, when it is invoked, continues to invoke itself, using additional space on the stack each time, until the stack overflows resulting in a segmentation fault.
Read more about this topic: Stack Overflow
Famous quotes containing the words deep and/or infinite:
“Cold dark deep and absolutely clear,
element bearable to no mortal,”
—Elizabeth Bishop (19111979)
“Coming to terms with the rhythms of womens lives means coming to terms with life itself, accepting the imperatives of the body rather than the imperatives of an artificial, man-made, perhaps transcendentally beautiful civilization. Emphasis on the male work-rhythm is an emphasis on infinite possibilities; emphasis on the female rhythms is an emphasis on a defined pattern, on limitation.”
—Margaret Mead (19011978)