Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

britoo

Lista encadeada

Recommended Posts

Fala pessoal, blz?

 

Então eu to com uma dúvida aqui, e o que não estou conseguindo entender são essas listas encadeadas.

Logo abaixo tenho um código( não funciona) que o professor passou como exemplo.

 

Entendi que até a parte que na linha struct registro *prox é um ponteiro referenciando um endereço, depois disso me perdi.

 

VLW pessoal.

 

#include <stdio.h>

#include <stdlib.h>

#include <conio.h>

 

 

typedef struct registro{

char dado;

struct registro *prox;

}tpLista;

 

tpLista *inicio = NULL;

 

void insere(tpLista *noAtual, char x){

 

tpLista *novoNo;

novoNo = (tpLista *) malloc (sizeof(tpLista));

novoNo -> dado = x;

 

if(noAtual == NULL){

inicio = novoNo;

inicio -> prox = NULL;

}

else{

while(noAtual -> prox != NULL){

noAtual = noAtual -> prox;

novoNo -> prox = NULL;

noAtual -> prox = novoNo;

}

}

}

 

void mostra(tpLista *noAtual){

 

printf("Valores da lista = ");

while(noAtual != NULL)

printf("%c ", noAtual -> dado);

noAtual = noAtual -> prox;

}

 

int main(){

 

insere(inicio, 'a');

insere(inicio, 'b');

insere(inicio, 'c');

insere(inicio, 'd');

 

mostra(inicio);

 

system("pause");

 

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.