·
Ciência da Computação ·
Linguagens de Programação
Send your question to AI and receive an answer instantly
Recommended for you
1
Trabalho 1 UERJ Contador de Palavras em C para Arquivos Texto
Linguagens de Programação
UERJ
18
Anotações de Aula - Vetores e Apontadores em C - Conceitos e Exercícios
Linguagens de Programação
UERJ
12
Formas de Acesso a Arquivos com e Sem Buffers - Tipos e Funções Essenciais
Linguagens de Programação
UERJ
7
Tutorial de Structs em C: Definição, Uso e Exemplos Práticos
Linguagens de Programação
UERJ
1
Prova LP II UERJ 2023-2: Classes Peixe, Rio, Mar e Tanque em Java
Linguagens de Programação
UERJ
1
Trabalho Pratico em C - Sistema de Controle de Pedidos para Restaurante UERJ
Linguagens de Programação
UERJ
1
Trabalho Prático C - Sistema de Controle de Pedidos para Restaurante UERJ
Linguagens de Programação
UERJ
17
Linguagem de Programacao C - Introducao e Fundamentos
Linguagens de Programação
UERJ
2
Lista de Exercicios UERJ IME Linguagem de Programacao I
Linguagens de Programação
UERJ
21
Tipos-de-Dados-Constantes-Variaveis-Operadores-Expressoes-Entrada-Dados-Guia-Completo
Linguagens de Programação
UERJ
Preview text
Alocação dinâmica de memória A linguagem C permite que áreas da memória possam ser alocadas em tempo de execução e desalocadas quando não são mais necessárias Tal procedimento otimiza a utilização da memória em tempo de execução do programa O tamanho dos tipos definidos é feito em tempo de execução Alocação da memória somente se dá no momento necessário O tamanho dos tipos definidos é definido antes da execução Alocação permanente na memória Alocação Estática X Alocação Dinâmica Principais Funções sizeof A função sizeof determina o número de bytes para um determinado tipo de dados O número de bytes reservados pode variar de acordo com o compilador utilizado malloc A função malloc aloca um espaço de memória e retorna um ponteiro do tipo void para o início do espaço de memória alocado free A função free libera o espaço de memória alocado Alocação dinâmica de memória Listas Encadeadas São estruturas parecidas com um vetor mas que podem aumentar ou diminuir de tamanho dependendo da necessidade Em C usaremos a alocação dinâmica de memória para trabalharmos as listas encadeadas Alocação dinâmica de memória NULL NULL Alocação dinâmica de memória include stdioh include stdlibh define DIM 4 typedef struct no struct no ant prox int num struct no corrente aux int i int main correnteauxNULL aterramento corrente struct no mallocsizeofstruct no aux corrente correnteant correnteprox NULL printf Entre com os numeros scanf dcorrentenum for i0 iDIM1 i corrente struct nomallocsizeofstruct no correnteprox NULL correnteant aux auxprox corrente aux corrente scanf dcorrentenum while correnteant NULL corrente correnteant aux corrente printf os valores da lista sao printf dcorrentenum while correnteproxNULL correntecorrenteprox if corrente NULL printf dcorrentenum free aux aux corrente free aux aux corrente NULL Inserção e deleção de nós na lista Alocação dinâmica de memória NULL NULL Inserir um nó while correntenum 23 correnteprox NULL corrente correnteprox aux struct nomalloc sizeof struct no printf Entre com o novo valor scanf d auxnum auxprox correnteprox if correnteprox NULL correnteproxant aux auxant corrente correnteprox aux Alocação dinâmica de memória Inserção e deleção de nós na lista NULL NULL Deletar um nó while correntenum 23 correnteprox NULL corrente correnteprox correnteantprox correnteprox if correnteprox NULL correnteproxant correnteant else correnteant NULL free corrente Exercício Escrever um programa em C que crie uma lista simplesmente encadeada Criar as rotinas para inserção e deleção de nós de qualquer posição da lista
Send your question to AI and receive an answer instantly
Recommended for you
1
Trabalho 1 UERJ Contador de Palavras em C para Arquivos Texto
Linguagens de Programação
UERJ
18
Anotações de Aula - Vetores e Apontadores em C - Conceitos e Exercícios
Linguagens de Programação
UERJ
12
Formas de Acesso a Arquivos com e Sem Buffers - Tipos e Funções Essenciais
Linguagens de Programação
UERJ
7
Tutorial de Structs em C: Definição, Uso e Exemplos Práticos
Linguagens de Programação
UERJ
1
Prova LP II UERJ 2023-2: Classes Peixe, Rio, Mar e Tanque em Java
Linguagens de Programação
UERJ
1
Trabalho Pratico em C - Sistema de Controle de Pedidos para Restaurante UERJ
Linguagens de Programação
UERJ
1
Trabalho Prático C - Sistema de Controle de Pedidos para Restaurante UERJ
Linguagens de Programação
UERJ
17
Linguagem de Programacao C - Introducao e Fundamentos
Linguagens de Programação
UERJ
2
Lista de Exercicios UERJ IME Linguagem de Programacao I
Linguagens de Programação
UERJ
21
Tipos-de-Dados-Constantes-Variaveis-Operadores-Expressoes-Entrada-Dados-Guia-Completo
Linguagens de Programação
UERJ
Preview text
Alocação dinâmica de memória A linguagem C permite que áreas da memória possam ser alocadas em tempo de execução e desalocadas quando não são mais necessárias Tal procedimento otimiza a utilização da memória em tempo de execução do programa O tamanho dos tipos definidos é feito em tempo de execução Alocação da memória somente se dá no momento necessário O tamanho dos tipos definidos é definido antes da execução Alocação permanente na memória Alocação Estática X Alocação Dinâmica Principais Funções sizeof A função sizeof determina o número de bytes para um determinado tipo de dados O número de bytes reservados pode variar de acordo com o compilador utilizado malloc A função malloc aloca um espaço de memória e retorna um ponteiro do tipo void para o início do espaço de memória alocado free A função free libera o espaço de memória alocado Alocação dinâmica de memória Listas Encadeadas São estruturas parecidas com um vetor mas que podem aumentar ou diminuir de tamanho dependendo da necessidade Em C usaremos a alocação dinâmica de memória para trabalharmos as listas encadeadas Alocação dinâmica de memória NULL NULL Alocação dinâmica de memória include stdioh include stdlibh define DIM 4 typedef struct no struct no ant prox int num struct no corrente aux int i int main correnteauxNULL aterramento corrente struct no mallocsizeofstruct no aux corrente correnteant correnteprox NULL printf Entre com os numeros scanf dcorrentenum for i0 iDIM1 i corrente struct nomallocsizeofstruct no correnteprox NULL correnteant aux auxprox corrente aux corrente scanf dcorrentenum while correnteant NULL corrente correnteant aux corrente printf os valores da lista sao printf dcorrentenum while correnteproxNULL correntecorrenteprox if corrente NULL printf dcorrentenum free aux aux corrente free aux aux corrente NULL Inserção e deleção de nós na lista Alocação dinâmica de memória NULL NULL Inserir um nó while correntenum 23 correnteprox NULL corrente correnteprox aux struct nomalloc sizeof struct no printf Entre com o novo valor scanf d auxnum auxprox correnteprox if correnteprox NULL correnteproxant aux auxant corrente correnteprox aux Alocação dinâmica de memória Inserção e deleção de nós na lista NULL NULL Deletar um nó while correntenum 23 correnteprox NULL corrente correnteprox correnteantprox correnteprox if correnteprox NULL correnteproxant correnteant else correnteant NULL free corrente Exercício Escrever um programa em C que crie uma lista simplesmente encadeada Criar as rotinas para inserção e deleção de nós de qualquer posição da lista