ELC1067 - Laboratório de Programação II
Primeiro Semestre de 2014
Professora: Juliana Kaizer Vizzotto
Aula I: Revisão Tipos de Dados, Ponteiros, Alocação Dinâmica
- (06/03/2014) Revisão Geral
Slides.
- (06/03/2014) Revisão Ponteiros
Texto sobre Ponteiros e Alocação Dinâmica
Alocação Dinâmica
- Considere a seguinte estrutura em C:
typedef struct Ponto{ int x; int y; }Ponto;
Agora considere o seguinte programa main em C:int main(void){ Ponto p1; p1.x = 0; p1.y = 1; printf("\n p1.x: %d\n", p1.x); printf("\n p1.y: %d\n", p1.y); Ponto* p2; p2 = (Ponto*) malloc(sizeof(Ponto)); p2->x = 0; p2->y = 1; printf("\np2->x: %d\n", p2->x); printf("\np2->x: %d\n", p2->y); }
Vetores e Alocação Dinâmica
- Usando alocação dinâmica podemos declarar a dimensão de um vetor em tempo de execução:
int *v; int n; v = (int*) malloc(n * sizeof(int));
Nesse caso, n é o tamanho do vetor. - (Meia Solução :)) Faça um programa que trabalhe vetor dinâmico de pontos dinâmicos. Faça uma função que calcule a distância entre dois pontos dinâmicos e faça um programa main para usar essa função.
Links
Apostilas
- Algoritmos e Estrutura de Dados.
HONDA, W.Y. & PARABONI, I.
Livros
- Introdução a Estrutura de Dados.
CELES, W.; CERQUEIRA, R. & RANGEL, J.L. - Introduction to Algorithms
Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein.