Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Dexter's Lab

Pointer to Struct vs struct

Mensagens Recomendadas

Dexter's Lab

Pessoal, o meu professor não me conseguiu explicar bem a seguinte questão, e por isso venho perguntá-la aqui:

- Qual a diferença entre ter um ponteiro para uma estrutura ou ser apenas uma estrutura?

. eu suspeito que seja na passagem por referência

. suspeito que seja na rapidez de acesso aos endereços de memória

mas além disso, que outros privilégios ou malefícios podem existir num ponteiro para uma estrutura?

Agradeço desde já

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pmg

Não há diferença entre ser estrutura ou, por exemplo, um inteiro. Isto é: a resposta a "qual a diferença entre ter um ponteiro para um inteiro ou ser apenas um inteiro?" á a mesma que a resposta à tua pergunta.

Usa objectos (estruturas ou inteiros) quando fizer sentido usar objectos; usa ponteiros quando fizer sentido usar ponteiros. Não te preocupes com rapidez de acesso e outras particularidades da implementação!


What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
HappyHippyHippo

o meu professor não me conseguiu explicar bem a seguinte questão

esta é a minha maior preocupação em relação às pessoas que pretendem aprender

como vê, o @pmg explicou num par de linhas ...


IRC : sim, é algo que ainda existe >> #p@p

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
pikax

O ponteiro podera' ser mais pequeno do que a variavel na stack, por isso tens um ganho de performance em termos de passar em parametros.

Um ponteiro pode ter tamanhos distinctos consoante a plataforma, compilador e a arquitectura do CPU, por exemplo se tiveres um sistema de 32bit, o tamanho de um ponteiro sera' de 32bit, nao compensa teres um ponteiro para uma estrutura que o tamanho dela seja de 16bit, se tiveres uma architectura X86-X64 em 64bit, um ponteiro tera' 64bit.

Claro que so' deveras preocuparte com as velocidade caso mesmo seja necessario. Isso e' quase como comparar a velocidade do o pre- vs pos- incremento num ciclo :D

esta é a minha maior preocupação em relação às pessoas que pretendem aprender

E' o problema de muitas escolas, que tem professores que nao sao capazes de responder... pelo o menos os meus antigos profs, no dia a seguir ja' eram capazes de dar uma explicacao :)


Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.