Ponteiros, Struct, Typedef e Recursividade
Ponteiro, Struct, Typedef e
Recursividade
Ponteiros
como o próprio nome diz, é uma variável que aponta para outra.
Um ponteiro guarda o endereço de memória de uma variável.
&
*
O antes de um nome de uma variável retorna o endereço desta variável
O
antes de um nome de uma variável do tipo ponteiro retorna o conteúdo armazenado na posição de memória apontada. Como declarar ponteiro?
Sintaxe: tipo *nome_do_ponteiro;
Exemplo:
int *ponteiro_inteiro; float *ponteiro_float; char *ponteiro_char; double *ponteiro_double;
char letra=‘Z’; char *ptr; ptr=&letra; 1º Exemplo
1.c
Atenção...
1º Exercício
Crie
um programa em C que declara dois números inteiros;
Em seguida, mostre o VALOR de cada variável, bem como seu ENDEREÇO;
Depois, altere os valores das variáveis e mostre novamente o VALOR e ENDEREÇO de cada variável desta.
OBS.: Utilize ponteiros.
Struct
Struct,
ou estrutura, é um bloco que armazenam diversas informações.
Como declarar uma struct?
Sintaxe:
struct nome_da_struct
{
tipo nome;
};
•1º
Exemplo
struct Funcionario
{
int idade; char nome[50]; float salario;
};
•2º
Exemplo
struct Funcionario
{
int idade; char nome[50]; float salario;
}empregado1, chefe, secretaria;
Para
acessar o elemento da struct usamos a sintaxe: nome_variavel.nome_elemento Exemplo:
chefe.idade
2º Exemplo
3.c
Typedef
A
palavra reservada typedef nada mais é do que um atalho em C para que possamos nos referir a um determinado tipo existente com nomes sinônimos.
Como declarar tipos com typedef
Sintaxe
do typedef :
typedef tipo_existente nome_escolhido;
Exemplos:
typedef int meuInteiro; typedef float aluno;
Quando
formos usar o typedef com struct, não podemos declarar