Grupo Lógica de Programação
ESTAMOS EM CONSTRUÇÃO - DESENVOLVIMENTO


Seja Bem Vindo ao Forum Grupo Lógica de Programação é uma satisfação recebê-los aqui.. espero que gostem desse espaço que foi feito para todos nós PROGRAMADORES.. Então venha fazer Parte deste Time tambem.. Saiba que este Forum foi feito com muita dedicação para o bem estar de todos vocês.. Então Registre-se e Decole no Mundo da Programação.....
Ao se Registrar você tem direito a participar do CHAT que só é visivel ao membros registrados. e pode bater papo com algum outro membro que estiver on line.. caso tenha alguma duvida pode olhar no Menu FAQ as perguntas mais recentes.
Bons Estudos é o que deseja todos nós que fazemos o GRUPO LÓGICA DE PROGRAMAÇÃO acontecer...

(EL MENSAJERO [FUNDADOR])

Ponteiros para estruturas

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Ponteiros para estruturas

Mensagem por Chrislley Alves da Silva em Ter 15 Maio 2012, 01:47

Este conteúdo é bem pequeno mais vai deixar claro o uso de ponteiros para structs.
Ponteiros para estrutura (struct) é declarado da mesma forma que um ponteiro para uma variável.

Ponteiros para variáveis
int num;
int *pnum;
pnum = #//atribui o endereço de num ao ponteiro pnum

esse é um ponteiro que aponta para um endereço de memória onde contém um valor inteiro.
da mesma forma acontece para outros tipos de dados

char nome[30];
char *pnome;
pnome = &nome;
memcpy(&pnome,"Maria",5);//copia o nome "Maria" para a variável nome;

Já vimos como é usado ponteiros para variáveis agora vamos ver como é para estruturas.

typedef struct cliente {
char nome[30];
int idade;
char sexo;
}cliente;

Temos agora um tipo de dados chamado cliente, agora podemos declarar uma variável e um ponteiro sendo desse tipo.

main(){
cliente joao;//declara uma variável do tipo cliente.
cliente *pjoao;//declara um ponteiro pjoao do tipo cliente

//apontando para joao;
pjoao = &joao;//ponteiro apontando para a variável joao do tipo cliente.

//inserindo dados
memcpy(&pjoao->nome,"João",4);//copia o nome "joão"
pjoao->idade = 50;
pjoao->sexo = 'm';

}

Para mostrar os valores na tela é só usar ->
printf("Nome: %s\n",pjoao->nome);
printf("Idade: %d\n",pjoao->idade);
printf("Sexo: %c",pjoao->sexo);

Espero que tenha dado para compreender.
O uso de ponteiros é muito importante.

Chrislley Alves da Silva
Novo no Fórum
Novo no Fórum

Mensagens : 2
Pontos : 12
Reputação : 0
Data de inscrição : 07/04/2012
Idade : 25
Localização : Goiânia

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum