ExpertiDict

C · Essencial · Inglês · Técnico

stack

/stæk/substantivo

Região de memória que guarda variáveis locais, parâmetros e endereços de retorno das chamadas ativas. Cresce e encolhe automaticamente a cada chamada e retorno de função.

Onde usar

Variáveis locais vivem aqui e somem quando a função termina. Arrays locais enormes ou recursão profunda estouram a stack, que costuma ter poucos megabytes.

Em código

void f(void) {
  int x = 5;
  char buf[64];
  printf("%d\n", x);
} // x e buf saem da stack aqui

Exemplos

That array is too big for the stack.

Esse array é grande demais para a stack.

Local variables live on the stack and disappear on return.

Variáveis locais vivem na stack e somem no retorno.

Cuidado

Devolver o endereço de uma variável local: ele deixa de ser válido ao sair da função.

Sinônimos

pilha

Antônimos

heap

Veja também

Todos os termos de C