Sobes.tech
Junior — Middle

O que se entende por estouro de pilha ao executar um programa?

sobes.tech IA

Resposta da IA

O estouro de pilha (stack overflow) ocorre quando um programa usa mais memória de pilha do que a alocada pelo sistema operativo. Geralmente acontece devido a uma recursão infinita ou muito profunda, ou por alocar variáveis locais demasiado grandes.

A pilha é uma área de memória onde são armazenadas variáveis locais e endereços de retorno de funções. Se a pilha transborda, o programa termina abruptamente com um erro.

Exemplo de recursão infinita que causa estouro de pilha:

void Recursive()
{
    Recursive(); // chamada a si mesmo sem condição de saída
}

Recursive();

Para evitar o estouro de pilha, é necessário controlar a profundidade da recursão e o tamanho dos dados locais.