Página 1 de 1

PONTEIROS

MensagemEnviado: 25 Fev 2007 16:21
por KILB
OLÁ,

SOU NOVO NO FORUM E EM C PARA PIC E TENHO UMA DUVIDA A QUAL ESTA RELACIONADA COM PONTEIRO.
NA VERDADE EU NÃO CONSIGO ENTENDER O PORQUE DE SE GUARDAR EM UMA VARIAVEL O ENDEREÇO DE OUTRA VARIAVEL.
POR EXEMPLO:

END_VAR=&VAR

ALGUEM PODERIA ME DAR UMA IDÉIA DE UTILIZAÇÃO MAIS PRATICA DE PONTEIRO?


VALEU




KILB

MensagemEnviado: 25 Fev 2007 17:45
por KrafT

MensagemEnviado: 25 Fev 2007 18:51
por KILB
OBRIGADO,

MAS O LIVRO EU JA TENHO

:D

MensagemEnviado: 25 Fev 2007 19:07
por KrafT
KILB escreveu:
MAS O LIVRO EU JA TENHO

:D


Legal! Pagina 113, Capitulo 8.

MensagemEnviado: 25 Fev 2007 19:10
por __JEREK__
Bom, na verdade não é só guardar o endereço, uma ponteira "aponta" para algum lugar. Veja esse exemplo.

Imagine que você tem o seguinte texto para salver no PIC

Não fume, Não fale com o motorista, Não pertube a ordem, Não aceite presente de estranhos.

Se você fizer uma ponterira tipo:

A = Não
B = &A

teriamos a frase mais compacta tipo

B fume, B fale com o motorista, B pertube a ordem, B aceite presente de estranhos.

por que não usamos A diretamente? porque para string tem que ser via ponteira.

me corrijam se eu estiver errado.

MensagemEnviado: 25 Fev 2007 19:24
por KILB
BOM JEREK,

VAMO VE SE ENTENDI,


É COMO SE FOSSE UMA CONSTANTE QUE É COLOCADA NO COMEÇO DE UM PROGRAMA E ESPALHADA DEPOIS PELO PROGRAMA TODO.
NA VERDADE SE VC QUISER MUDAR AQUELE VALOR, VC SÓ MUDA O VALOR DECLARADO NO INICIO DO PROGRAMA E O RESTO É MODIFICADO AUTOMATICAMENTE.
COM CERTEZA APLICANDO ISTO NO CASO EM PONTEIROS.

SE FOR ISTO ENTENDI



MUITISSIMO OBRIGADO JEREK




KILB
VALEU KRAFT

MensagemEnviado: 25 Fev 2007 19:50
por KrafT
Não é bem assim. Dá uma lida nessa pagina:

http://br.geocities.com/sdiasneto/c_int/ponteiros.htm

Pq redigitar tudo aquí não dá, hehe...

MensagemEnviado: 25 Fev 2007 19:59
por KILB
Muito obrigado colega Kraft,

Este material é de grande valia para mim.

Vou estuda-lo e caso tenha duvidas, humildemente voltarei a posta-las para que os colegas possam me ajudar.



Valeu


KILB

MensagemEnviado: 25 Fev 2007 20:14
por KrafT
Não é má vontade não... O assunto é muito extenso mesmo. Por isso eu indiquei os textos e assim o colega vai ter dúvidas mais específicas e mais "respondíveis".

Mas, vou te dar um exemplo rápido e prático:

- Voce recebe dados pela porta serial do PIC. Só que os dados só tem utilidade se receber o pacote inteiro. O que voce faz?

No inicio voce cria uma matriz, por exemplo RxData e um ponteiro (PonteiroRx) desses dados. O primeiro byte vc salva em RxData[PonteiroRx], sendo PonteiroRx inicialmente =0.

Aí voce incrementa PonteiroRx e o proximo byte será automaticamente salvo na segunda posicao de RxData.

No final da recepcao , vc utilizara novamente de ponteiro para ler e checar esses dados.

Agora se voce tem duas portas seriais, voce cria um RxData1 usa um ponteiro para RxData e outro para RxData1, permitindo que vc use as mesmas rotinas para tratar matrizes diferentes, economizando um monte código.

MensagemEnviado: 25 Fev 2007 20:22
por KILB
Longe disso Kraft,

A minha obstinação em aprender é muito grande, e como disse sou iniciante mesmo e hobista, por isso vou ler com extrema atenção o que vc me passou e com certeza voltaremos a converssar sobre os tais ponteiros.



Valeu, de coração muito obrigado,

T+

KILB

MensagemEnviado: 26 Fev 2007 09:53
por andre_luis
Uso esse site como referencia :

http://www.mtm.ufsc.br/~azeredo/cursoC/c.html

MensagemEnviado: 26 Fev 2007 14:20
por Lorin
Olá!

Veja estas 4 páginas de boa conversa sobre PONTEIROS EM C no fórum antigo ASM51:

http://www.asm51.eng.br/forum/topic.asp?TOPIC_ID=8212

sdçs e blz!

MensagemEnviado: 26 Fev 2007 14:33
por Lorin
Moderadores:

Migrem/salvem para o fórum novo este tópico,pois o mesmo está bem legal!

http://www.asm51.eng.br/forum/topic.asp?TOPIC_ID=8212

Sdçs

MensagemEnviado: 26 Fev 2007 15:18
por EDSONCAN
"NA VERDADE EU NÃO CONSIGO ENTENDER O PORQUE DE SE GUARDAR EM UMA VARIAVEL O ENDEREÇO DE OUTRA VARIAVEL. "
Pense na situacao na qual vc tem que trabalhar com matrizes e estruturas complexas com varios tipo de variaveis, na qual vc tem que passar isso como parametro de funções, e mais facil passar o endereco para a estrutura ou a estrututa toda, ou cria-la como global e perder a propriedade de encapsular os dados localmente, que pode evitar erros, principalmente trabalhando em grupo.
Sei que é enrolado, mas para acabar de dar um nó na sua cabeça da para fazer ponteiro de ponteiro e aritimetica com eles tambem.
Ponteiros sao poderos, mas se for disciplinado e melhor nao usar.

Edson