Ir para conteúdo
Fórum Script Brasil
  • 0

Ponteiro, Lista Encadeada


maquina

Pergunta

---1---

uma função do tipo char **(xxx)

esse char ** é ponteiro ponteiro, ponteiro bidemensional ou o q?

já tentei retornar de todas maneiras possiveis uma matriz q quero retornar e nada, alguém sabe de que jeito se faz??

---2---

typedef struct lista {

int info;

struct lista *prox;

} Lista;

Lista* p; /*lista auxiliar*/

l->info=p->info;

li=p->prox;

p=p->prox;

co=p->prox;

ta achando erro nessa parte porque??

obrigado

Editado por maquina
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
Guest Lucas Couto Gonçalves de Paula

1- Se você declara alguma coisa como char **p (p é uma variável qualquer), esta variável será um vetor de ponteiros para char. No C isso pode ser uma matriz de duas dimensões, falando em mais alto nível, do tipo char p[3][10]: onde o primeiro indice [0] indica o endereço da primeira palavra que pode ter até 10 letras indice [10], o segundo [1] é o endereço para a segunda palavra que também pode ter 10 letras indice [10] e assim por diante. Só que no primeiro caso você não se preocupa com dimensões. Ou seja é como você mesmo falou um ponteiro para ponteiro, só que nesse caso é um vetor de ponteiros para char. Agora caso você queira trabalhar esta varíavel em uma função terá de passá-la por referência como um outro argumento qualquer, declarando nos parâmetros da função algo do tipo char **p, ou char *p[], ou char[][]. Isso é tudo mesma coisa. Agora tenha em mente uma coisa se for usar esse vetor de ponteiros em funções como strcmp, ou gets você deverá passar da maneira mais fácil algo do tipo p[0], que é o endereço da primeira palavra do matriz que você passou por referência (matriz e ponteiros são intimamente ligados), pois essas funções pedem apenas o endereço da string.

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Lucas Couto Gonçalves de Paula

2- Ao declarar: Lista* p; você declarou um ponteiro para a sua estrutura que você apelidou de Lista. Porque você está usando uma lista auxiliar. Me mande a declaração das suas variáveis e me diga qual linha que ele está dando erro e qual é o erro (pode ser em inglês).

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...