[delphi-br] Ponteiros, affe
Alguem pode passar um exemplo bem simples de o que é um ponteiro e do porquê utiliza-lo? não estou compreendendo muito bem, como assim guarda um endereço de onde está a informação? Obrigado. Eric Wesley (AXL) -- < FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM > Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [delphi-br] Ponteiros, affe
Olha o codigo abaixo: procedure TForm1.Button1Click(Sender: TObject); var x : ^Integer; begin new( x ); x^ := 10; dispose(x); end; fazendo um esquema a memoria poderia ficar assim: x $B87D00 [$B87D00] >[10] O desenho acima significa que dentro da variavel "X" existe o numero $B87D00. Este numero eh um endereco de memoria, onde foi colocado o valor 10. A variavel X, eh chamada de ponteiro porque o seu conteudo nao eh a informacao (o numero), mas o endereco de memoria ($B87D00) onde a informacao (10) esta localizada na RAM. - Original Message - From: "AXL_ERIC" <[EMAIL PROTECTED]> To: Sent: Thursday, March 03, 2005 10:44 AM Subject: [delphi-br] Ponteiros, affe > > > Alguem pode passar um exemplo bem simples de o que é um ponteiro e do > porquê utiliza-lo? > não estou compreendendo muito bem, como assim guarda um endereço de onde > está a informação? > > Obrigado. > > Eric Wesley (AXL) > > > > > > -- > <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> > > Para ver as mensagens antigas, acesse: > http://br.groups.yahoo.com/group/delphi-br/messages > > Para falar com o moderador, envie um e-mail para: > [EMAIL PROTECTED] ou [EMAIL PROTECTED] > > Links do Yahoo! Grupos > > > > > > > > > > > > > -- > No virus found in this incoming message. > Checked by AVG Anti-Virus. > Version: 7.0.300 / Virus Database: 266.6.0 - Release Date: 2/3/2005 > > -- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.300 / Virus Database: 266.6.0 - Release Date: 2/3/2005 -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html
Re: [delphi-br] Ponteiros, affe
type Meu_Ponteiro_Inteiro: ^Integer; var i: Integer; pi: Meu_Ponteiro_Inteiro; begin i := 500; // a variável "i" armazena o valor 500 na memória pi := @i; // coloque em "pi" o endereço de memória onde está "i" ShowMessage(IntToStr(pi^)); // exibe o valor inteiro 500 i := 7500; // a variável "i" armazena o valor 7500 na memória ShowMessage(IntToStr(pi^)); // exibe o valor inteiro 7500; // o valor de "i" alterou mas a // região da memória onde seu valor // é armazenado continua a mesma end. Quando você declara "i" como inteiro, você diz ao compilador para reservar na memória uma região de tamanho adequado (tamanho de um inteiro) onde o valor de "i" poderá ser lido e armazenado. Esse espaço de memória reservado é o endereço de i, dado por "@i" em Pascal. Ponteiros são variáveis cujos valores são endereços de memória (ao invés de um boolean, string ou integer). Quando atrabuí a "pi" o endereço de "i", quis dizer que o valor de "pi", a partir daquele momento, poderia ser também utilizado para acessar o conteúdo da posição de memória que corresponde ao valor armazenado em "i". Veja que, apesar de alterar o valor de "i", o endereço onde o valor de "i" é armazenado continua o mesmo. Usando o ponteiro "pi", podemos vigiar uma região de memória e verificar a qualquer tempo qual seu (novo) valor. Esse é o básico dos ponteiros. Cordialmente, Demian Lessa Salvador - Brasil AXL_ERIC wrote: > > Alguem pode passar um exemplo bem simples de o que é um ponteiro e do porquê > utiliza-lo? > não estou compreendendo muito bem, como assim guarda um endereço de onde está > a informação? > > Obrigado. > > Eric Wesley (AXL) -- < FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM > Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html