So, as you may have guessed, the problem is overflowing the stack (of the same name). For each call, you need to create a new stack stack by inserting new information on the stack; the stack size is fixed and eventually ends.
? - . Microsoft ( VS2010) 1 , "/F" (. '03, ).
, . , ( ), . , , ( ). , . , , , 256 , 1M 4096 - ..
, Tail Call Optimization, . MSVC . , , "/F" ( ) .