TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Alocação De Memória

Tese: Alocação De Memória. Pesquise 862.000+ trabalhos acadêmicos

Por:   •  14/10/2014  •  Tese  •  832 Palavras (4 Páginas)  •  231 Visualizações

Página 1 de 4

Alocação de memoria

Vimos até agora dois tipos de alocação de memória, que seria a alocação Estática e alocação Dinâmica.

Alocação Estática:

É quando definimos os tamanhos da variável na declaração da mesma, após isso criamos o programa encima das variáveis criadas e executamos após executarmos o Sistema operacional lê e reserva aquele espaço pré-definido na memoria.

Quando o usuário digita o que foi solicitado o programa lê e armazena non espaço reservado, porém está forma se torna um problema quando a informação que o usuário digitou é maior que o espaço reservado ou é muito menor, pois quando for maior o usuário não terá como digitar a informação correta podendo acarretar danos posteriores e quando a informação for muito menor o sistema estará reservando um espaço que poderia ser utilizado de uma forma mais útil, por isso é recomendado o uso da alocação Dinâmica.

Ex: #include <stdlib.h>

char c; int i; int v[10];

Alocação Dinâmica:

Na alocação dinâmica não é necessário definir tamanhos na declaração por que ela pode ocorrer a qualquer momento no decorrer do programa.

Para usar essa alocação precisamos usar a função Malloc e para liberar espaço usamos Free.

O Malloc aloca um bloco de bytes na memoria e depois devolve o endereço do mesmo, o numero de bytes para utilização é especificado dentro da função.

Ex: char *ptr;

ptr = malloc( 1);

scanf( "%c", ptr);

Malloc devolve o endereço do tipo void e o programador usando o ponteiro armazena no tipo apropriado.

No Free nós liberamos o espaço alocado dinamicamente para reutilização.

Quando o espaço é alocado dinamicamente as variáveis continuam a existeir mesmo depois da excução do programa por isso usamos a função Free para liberar esse espaço.

Ex: free( ptr);

ptr = NULL;

Ponteiros em C

O ponteiro é uma variável especial que armazena o endereço de memoria de outras variáveis.

O ponteiro é como uma referencia de uma variável, o ponteiro é tratado como um assunto difícil consumam dizer que o programador que entendi o que é ponteiro e o utiliza bem é um mestre, a declaração de um ponteiro é muito simples utilizamos o * (Asterisco) antes do nome do ponteiro.

Ex: *pont

Já para acessar esse ponteiro usamos o operador & (e comercial), o ponteiro tem que ser sempre inicializado e declarado de forma correta, ponteiros são utilizados quando criamos estruturas com dados complexos, para comunicação sobre a memoria como a função molloc descrita acima entre outros.

Estrutura de Dados em C

A lista encadeada que é também uma estrutura de dados é apresentada em uma sequencia de valores ou objetos guardados na memória do computador.

Os elementos são dispostos um a um em uma “Lista”, nesta lista em que estão dispostas as células da lista guardam o valor de algum tipo e também o endereço da célula seguinte, é importante tratar está lista como um tipo de dado e referencia-la com um nome, a lista encadeada é bastante usada em grandes projetos por apresentar mais facilidade na hora de buscar ou armazenar informações, mesmo com toda a facilidade ainda existem muitos projetos com resistência a utilizar uma estrutura assim como a lista encadeada.

Ex: struct cel {

int cod;

struct cel *prox;

};

Vetores em C

São variáveis especiais que agrupam outras variáveis (posições) do mesmo tipo em

...

Baixar como (para membros premium)  txt (5.2 Kb)  
Continuar por mais 3 páginas »
Disponível apenas no TrabalhosGratuitos.com