C · Intermediário · Inglês · Técnico
stack frame
Bloco da stack criado a cada chamada de função, com parâmetros, variáveis locais e o endereço de retorno. É destruído quando a função retorna.
Onde usar
Depurar com gdb mostra a cadeia de frames (bt), útil para achar quem chamou a função que quebrou. Recursão sem fim empilha frames até estourar a stack.
Em código
int fat(int n) {
if (n <= 1) return 1;
return n * fat(n - 1); // um frame por n
}Exemplos
Each recursive call adds a new stack frame.
Cada chamada recursiva adiciona um novo stack frame.
Use bt in gdb to list every stack frame.
Use bt no gdb para listar cada stack frame.
Cuidado
Depender do layout exato do frame no código, pois ele varia com a arquitetura e o compilador.
Sinônimos
registro de ativação