Pular para o conteúdo

Alocação dinâmica

A alocação dinâmica é o processo que aloca memória em tempo de execução. Ela é utilizada quando não se sabe ao certo quanto de memória será necessário para o armazenamento das informações, podendo ser determinadas em tempo de execução conforme a necessidade do programa. Dessa forma evita-se o desperdício de memória.
Daniel Gurgel Pinheiro dgpinheiro
Hits: 32.813 Categoria: C/C++ Subcategoria: Avançado
  • Indicar
  • Impressora
  • Denunciar

Visão mais detalhada da memória do computador

Para a representação das variáveis na memória do computador cada variável ficava guardada numa posição de memória. Por exemplo, se fizéssemos um programa que contivesse a seguinte declaração:

int x = 9;

o x poderia ir parar à posição de memória E2 quando o programa fosse executado. Na realidade, as coisas não são bem assim. Cada posição de memória corresponde apenas a um byte e uma variável inteira ocupa geralmente 4 bytes. Ou seja, o número 9 não vai estar representado numa única posição de memória, mas sim em 4 posições de memória (ex: E2, E3, E4 e E5). Aliás, aquilo que está nessas 4 posições de memória é a representação em binário do número 9. A figura que se segue dá esta visão mais detalhada da memória.


Apesar da variável x estar localizada nos endereços E2, E3, E4 e E5, costuma dizer-se que o endereço da variável x é E2. Isto é, o endereço de uma variável é o endereço do primeiro byte que a variável ocupa.

   1. Visão mais detalhada da memória do computador
   2. E os arrays? Como é que são guardados?
   3. Alocação dinâmica de memória
   4. Veja programa como exemplo

Acessando a porta paralela via Linux

Linguagem C - Funções Variádicas

Programação com números inteiros gigantes

Sinais em Linux

Instalando Facebook Folly através do Conan

Projeto Icecream (parte 1)

#1 Comentário enviado por tuxSoares em 02/11/2006 - 10:31h
Não entendi muita coisa mais tá de parabéns! Continue ajudando nossa comunidade, artigos como o seu são impressindiveis para o desenvolvimento intelectual de quem deseja aprender.

Vlw :)
#2 Comentário enviado por Reideer em 02/11/2006 - 10:47h
?
e como ficam lista e fila nesta historia?
acredito que tenha muitos metodos para alocação dinâmica.
#3 Comentário enviado por AboutDiego em 02/11/2006 - 23:34h
Vale ressaltar que dependendo do seu compilador pode também possuir o arquivo oculo malloc.h, tem o mesmo efeito que stdlib.h na hora da alocação dinâmica só muda em que na parte onde você coloca p=(int*)malloc, você colocará p=(int*)calloc

Obs: Somente para abrir um pouco mais o leque ^^. falouz
#4 Comentário enviado por balani em 03/11/2006 - 20:58h
Interessante, eu só não entendi ainda onde usar.
#5 Comentário enviado por AboutDiego em 04/11/2006 - 00:15h
Como utilizar o alocamento de memória ou como utilizar o documento??
#7 Comentário enviado por juniomundo em 06/11/2010 - 16:53h
Ótimo. Muito obrigado. Está sendo de grande valia.

Contribuir com comentário

Entre na sua conta para comentar.