title: Is there any limit on stack memory?
body: <p>I was going through one of the threads.
  A program crashed because
  it had declared an array of 10^6 locally inside a function.</p>
  
  <p>Reason being given was memory allocation failure on stack leads to crash.</p>
  
  <p>when same array was declared globally, it worked well.(memory on heap saved it).</p>
  
  <p>Now for the moment, let us suppose,
  stack grows downward and heap upwards.</p>
  
  <p>We have:</p>
  
  <h1>---STACK---</h1>
  
  <h2>-------------------</h2>
  
  <h1>---HEAP----</h1>
  
  <p>Now , I believe that if there is failure in allocation on stack,
  it must fail on heap too.</p>
  
  <p>So my question is: is there any limit on stack size?
  (crossing the limit caused the program to crash).
  Or am I missing something?</p>