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:
“Ill read you matter deep and dangerous,
As full of peril and adventurous spirit
As to oerwalk a current roaring loud
On the unsteadfast footing of a spear.”
—William Shakespeare (15641616)
“Vast chain of Being, which from God began,
Natures aethereal, human, angel, man,
Beast, bird, fish, insect! what no eye can see,
No glass can reach; from Infinite to thee,
From thee to Nothing!”
—Alexander Pope (16881744)