Atps estrutura de dados
A alocação dinâmica permite ao programador alocar memória quando o programa está sendo executado. Um exemplo de locação de memoria A função calloc() também serve para alocar memória
1. Ponteiros
O ponteiro nada mais é do que uma variável que guarda o endereço de outra variável. A declaração de ponteiros é feita da seguinte forma:
int *pa;
A instrução acima indica que pa é um ponteiro do tipo int. Agora veremos como atribuir valor ao ponteiro declarado. Para isto é necessário saber que existem dois operadores unitários que são utilizados com os ponteiros. O primeiro é o operador (*) através dele é possível retornar o valor da variável que está localizada no ponteiro. E o segundo é o operador (&) que retorna o endereço de memória que está localizado o valor da variável contida no ponteiro. Portanto para atribuirmos um valor para o ponteiro é necessário referencia o valor da variável que se encontra no ponteiro utilizando o operador (*), como será demonstrado a seguir.
*pa=24;
2. Estruturas de dados e C
Vetores em C
Vetores, também chamados arrays (do inglês)ou arranjo ou ainda matrizes, são uma maneira de armazenar vários dados em um mesmo nome de variável através do uso de índices numéricos. Em C, vetores devem sempre conter dados do mesmo tipo de variável.
Declaramos vetores de maneira muito semelhante à declaração de variáveis normais. A única diferença é que depois do nome da variável deve ser informada a quantidade de elementos do vetor. Para declarar um vetor chamado vetor, com cinco elementos inteiros, escrevemos: int vetor [5];
3. Implementando vetores unidimensionais
Vetores Unidimensionais também são conhecidos como arrays, são variáveis que servem para guardar vários valores do mesmo tipo de forma uniforme na memória. Por exemplo, se tivemos que criar 20 variáveis do mesmo tipo que querem dizer a mesma coisa, nós não criaríamos -> int x1, x2, x3, x4, x5, ... ao invés disso,