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

(Resolvido) Ajuda em estruturas escadeadas


Tools

Pergunta

Por favor, alguém poderia me dizer porque esse codigo abaixo esta exibindo o endereço da variavel e não o conteudo da variavel????

#include<stdlib.h>
#include<stdio.h>

typedef struct tlista
{
        int n;
         tlista *prox;
        }tlista;
        
        tlista *insere(tlista *plst, int pn)
        {
               tlista *novo;
               novo = (tlista*)malloc(sizeof(tlista));
               novo->prox = plst;
               return(novo);
               }
               void exibelista(tlista *plst)
               {
                    tlista *aux;
                    aux = plst;
                    while(aux != NULL)
                    {
                                    printf("%d", aux->n);
                                    printf("\n");
                                    aux = aux -> prox;
                                    }
                                    }
int main(void)
{
   tlista *prim = NULL;
    prim = insere(prim,17);
    prim = insere(prim,12);
    prim = insere(prim,8);
    exibelista(prim);
    system("pause");
}

obs:o codigo apenas insere dados em uma lista e a exibe.

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

acho q não é o endereco q ele ta mostrando, ele deve ta mostrando o valor q tava dentro do espaco de memoria na hora q a variavel foi criada.

se você for ver você não ta passando o valor pra n em nenhum lugar. acho q deveria ser aqui na hora de inserir não??

tlista *insere(tlista *plst, int pn)
{
    tlista *novo;
    novo = (tlista*)malloc(sizeof(tlista));
    novo->prox = plst;
    return(novo);
}[/code]

onde você passa o valor de pn pra n ai??

Link para o comentário
Compartilhar em outros sites

  • 0
acho q não é o endereco q ele ta mostrando, ele deve ta mostrando o valor q tava dentro do espaco de memoria na hora q a variavel foi criada.

se você for ver você não ta passando o valor pra n em nenhum lugar. acho q deveria ser aqui na hora de inserir não??

tlista *insere(tlista *plst, int pn)
{
    tlista *novo;
    novo = (tlista*)malloc(sizeof(tlista));
    novo->prox = plst;
    return(novo);
}

onde você passa o valor de pn pra n ai??

=DDDDDDDDDDDDDDDDDDDDDDDDDDDD

mt obrigado amigo...

o erro estava ai mesmo...

falto a seguinte linha:

novo->n=pn;

ueahueahueahuea...

erro tosko...

brigadao ai, senti q o forum é firmeza :D...

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,3k
    • Posts
      652,3k
×
×
  • Criar Novo...