Defina e dê exemplos:
Alocação estática
Alocação estática
Passo 1
Beleza, vamos lá! A questão pede para definir o que é alocação estática e dar alguns exemplos. Isso faz parte do conteúdo de Programação e Gerenciamento de Memória. Para resolver, vamos precisar entender como a memória é gerenciada em programas, especificamente a diferença entre alocação estática e dinâmica.
Passo 2
Primeiro, vamos definir o que é alocação estática. Alocação estática é quando a quantidade de memória que um programa vai usar é definida no momento da compilação, ou seja, antes do programa começar a rodar. Isso significa que o tamanho das variáveis ou estruturas de dados é fixo e não muda durante a execução do programa.
Passo 3
Por exemplo, se você declara um array com um tamanho específico, como
int números[10];
, você está usando alocação estática. Aqui, o programa reserva espaço para 10 inteiros na memória quando ele é compilado, e esse espaço não pode ser alterado enquanto o programa está rodando.Passo 4
Outro exemplo são as variáveis globais. Quando você declara uma variável fora de qualquer função, ela é alocada estaticamente. Isso significa que ela ocupa espaço na memória durante todo o tempo que o programa estiver em execução, desde o início até o fim.
Passo 5
A alocação estática tem a vantagem de ser mais rápida, já que o espaço na memória é reservado antecipadamente. Porém, ela é menos flexível porque não permite ajustar a quantidade de memória durante a execução do programa. Se você precisar de mais ou menos memória, precisa recompilar o programa com os novos tamanhos.
Resposta
Então, alocação estática é a forma de reservar memória durante a compilação, com tamanho fixo e conhecido antecipadamente. Exemplos disso são a declaração de arrays com tamanho fixo, como
int números[10];
, e variáveis globais que permanecem na memória enquanto o programa roda.