Estrutura de dados

1051 palavras 5 páginas
ALGORITMOS E ESTRUTURAS DE DADOS USANDO A LINGUAGEM C
Prof. Danielson Rodrigues

LINGUAGEM C – VI. PONTEIROS
Ponteiros (ou apontadores) são variáveis que armazenam endereços de outras variáveis. No exemplo ao lado, p e q são ponteiros. Declarações: float a; int c; float *p; int *q; p = &a; q = &c;

PONTEIROS…
Principais utilidades de ponteiros:
Passagem de parâmetros por referência, em sub-programação. Alocação dinâmica de variáveis indexadas. Encadeamento de estruturas.

Operadores.
(&) que retorna o endereço de memória da variável. (*) retorna o conteúdo da variável existente no endereço (ponteiro).

PONTEIROS: NOTAÇÃO
Se p é um ponteiro, *p é o valor da variável apontada por p. Se a é uma variável, &a é o seu endereço. Exemplos:

PONTEIROS: EXEMPLO
Sejam as declarações abaixo: int a=2, b=5, *p=&a; *q=&b;

A inicialização é de p e q, não de *p e *q:

PONTEIROS E VARIÁVEIS INDEXADAS
Sejam as declarações abaixo: int a[7], *p, b[5];

PONTEIROS…
OUTRAS SEMELHANÇAS
Ponteiros podem ter índices, e variáveis indexadas admitem o operador unário ‘*’. Por exemplo, suponha as declarações abaixo: int i, a[50], *p; a[i] é equivalente a *(a+i) *(p+i) é equivalente a p[i]

a contém o endereço de a[0]: p = a equivale a p = &a[0] p = a+1 equivale a p = &a[1]

PONTEIROS…
Constante versus variável: a é o endereço inicial de um vetor estático: seu valor não pode ser alterado. p é uma variável: seu conteúdo pode mudar.

Atribuições: p = &i é permitido a = &i não é permitido

Endereços na memória: a[1] tem sempre o mesmo endereço. p[1] pode variar de endereço.

PONTEIROS…
Passagem de Argumentos por Endereço - passagem de argumentos por endereço, onde a própria variável é utilizada na função, e não uma cópia dela.

Saidas : 2 3 2 3

Saidas : 2 3 3 2

PONTEIROS…
Percebem-se algumas alterações, descritas a seguir. a função troca() passa a receber argumentos do tipo int*, ao invés de int. Isto é necessário para que a função

Relacionados

  • Estrutura de Dados
    294 palavras | 2 páginas
  • Estrutura de dados
    1410 palavras | 6 páginas
  • estrutura de dados
    308 palavras | 2 páginas
  • Estrutura de dados
    1209 palavras | 5 páginas
  • Estrutura de dados
    365 palavras | 2 páginas
  • estrutura de dados
    940 palavras | 4 páginas
  • Estrutura de dados
    1051 palavras | 5 páginas
  • Estrutura de dados
    45366 palavras | 182 páginas
  • Estrutura de Dados
    16294 palavras | 66 páginas
  • Estrutura de Dados
    1559 palavras | 7 páginas