Skip to content

Instantly share code, notes, and snippets.

@antonio-abrantes
Created August 12, 2016 19:31
Show Gist options
  • Save antonio-abrantes/73a2cdded0456d52b2b8eebf41e427ef to your computer and use it in GitHub Desktop.
Save antonio-abrantes/73a2cdded0456d52b2b8eebf41e427ef to your computer and use it in GitHub Desktop.
Teste com Listas 2
#include <stdio.h>
#include <stdlib.h>
struct reg{
int conteudo;
struct reg *prox;
};
typedef struct reg celula;
void imprime (celula *le) {
if (le != NULL) {
printf ("%d\n", le->conteudo);
imprime (le->prox);
}
}
int main(int argc, char** argv)
{
celula *ini_celula;
celula *proxima_celula;
//int resp;
//Gerando primeiro elemento que ainda não aponta para ninguem
ini_celula = (celula *)malloc (sizeof (celula));
if(ini_celula == NULL)
exit(1);
//Primeiro elemento
proxima_celula = ini_celula; //Fila vazia aposnta para o inicio
proxima_celula->conteudo = 10;
//Gerando segundo elemento que não aponta para ninguem
proxima_celula->prox = (celula *)malloc (sizeof (celula));
proxima_celula = proxima_celula->prox;
proxima_celula->conteudo = 20;
proxima_celula->prox = (celula *)malloc(sizeof (celula));
proxima_celula = proxima_celula->prox;
proxima_celula->conteudo = 87;
//Ao fim da inserção de valores atrubui NULL
//O ponto vazio indica o fim da lista
proxima_celula->prox = NULL;
//printf("Celula inicial: %d\n", ini_celula->conteudo);
//Ao final, reapontar para o inicio da lista
proxima_celula = ini_celula;
while(proxima_celula != NULL){
printf ("sizeof (celula) = %d\n", proxima_celula->conteudo);
proxima_celula = proxima_celula->prox;
}
return EXIT_SUCCESS;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment