Recursividade
Uso de Ponteiros
Parte ¼
Ponteiro = Indica um espaço de memória em particular. Referencia indiretamente um conteúdo, OU SEJA, É UMA VARIÁVEL QUE CONTEM UM ENDEREÇO DE MEMORIA;
Ex: Anotação de endereço pessoal
CRIAÇÃO DE VERIÁVEL
Int *a; (1 ponteiro para int)
Int *a, *b; (2 ponteiro para int)
Int *a, *b, c; (2 ponteiro para int e 1)
Ex:
Char a, *b a M
*b
004233E
OPERADORES DE PONTEIROS
& > obtém o endereço de memória
* >
Parte 2/4
Passagem de parâmetros (ou argumentos)
1 – Passar parâmetro por valor
2 – Passar parâmetro por referencia
PARAMETRO > pega uma uma informação e leva para outro lugar. Cópia ou pega o endereço de memória e copia (simulação – Linguagem C trabalha com passagens de parametros).
POR VALOR (cópias – quando a execução termina, as informações são destruídas):
EX:
Criar um prog que utiliza uma função que gera um triplo de dois números
Ex: 3,5 > gera 9 e 15
#include
Int main(void){
Int x, y;
X = 3;
Y = 5;
Calculo(x,y);
Getchar();}
Void calculo(intx, int y){
X=x*3;
Y=y*5;
(procurar na apostila)
PASSAGEM DE PARAMETRO POR REFERÊNCIA
Trabalha com o endereçamento de memória. Nada será destruído após a execução.
Obs: neste caso eu envio o endereço de memória desejado
EX: Criar um prog que utiliza o tripo de dois números. A diferença é que quero mostrar os valores no MAIN.]
#include
Int main(void){
Int x, y;
X = 3;
Y = 5;
Calculo(&x,&y);
Print(“x = %d y = %d” , x, y);
Getchar();}
Void calculo(int *x, inty){
(procurar na apostila
QUALIFICADOR const
Força uma variável a não ter seu conteúdo modificado.
Ex:
Void calculo(const a, const inte b){ a e b não podem ser alterados
Utilizar qualificador const utilizando ponteiros
1 ponteiros não constantes referenciando dados constantes
2 ponteiro constante referenciando não constantes
3 ponteiro constante para dados também constantes.
EX1: const float *p;