Defina e dê exemplos:
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.

Exercícios relacionados