Vangodp, muito grato pela resposta.
Gostaria de continuar nesse mesmo tópico, para sanar outra dúvida. Estou lendo LED em C, de tanto olhar aprendi os conceitos, e vejo o codigo funcionando perfeitamente. Porém, não consigo entender onde estão sendo salvos os dados de uma LED. Observem o código abaixo:
1 #include <stdio.h>
2
3 typedef struct {
4 char nome[50];
5 int idade;
6 float altura;
7 } t_info;
8
9 typedef struct {
10 t_info info;
11 struct t_no *prox;
12 } t_no;
13
14 t_no *L;
15 t_info novoDado;
16
17 void inicializa() {
18 L == NULL;
19 }
20
21 void inserir(t_info info) {
22 t_no *p = malloc(sizeof (t_no));
23 p->info = info;
24 p->prox = L;
25 L = p;
26 }
27
28 void mostrar() {
29 t_no *aux = L;
30
31 if (aux == NULL) {
32 printf(“\n Lista vazia! \n”);
33 return;
34 }
35
36 while (aux != NULL) {
37 printf(“\n%s\n”, aux->info.nome);
38 printf(“%d\n”, aux->info.idade);
39 printf(“%3.2f\n”, aux->info.altura);
40 aux = aux->prox;
41 }
42 }
43
44 void lerDados() {
45 printf(“\n\n=== Lendo os dados ===\n”);
46 printf(“Nome..: “);
47 fflush(stdin);
48 gets(novoDado.nome);
49 printf(“Idade.: “);
50 scanf(“%d”, &novoDado.idade);
51 printf(“Altura: “);
52 scanf(“%f”, &novoDado.altura);
53 }
54
55 int menu() {
56 int opcao;
57
58 printf(“\n\n Opcoes possiveis \n”);
59 printf(“0 - Sair\n”);
60 printf(“1 - Inserir\n”);
61 printf(“2 - Mostrar\n”);
62 printf(“\nO que deseja fazer? “);
63 scanf(“%d”, &opcao);
64 return opcao;
65 }
66
67 int main() {
68
69 int opcao;
70 inicializa();
71
72 do {
73 opcao = menu();
74 switch (opcao) {
75 case 0:
76 break;
77 case 1: // inserir
78 lerDados();
79 inserir(novoDado);
80 break;
81 case 2: // exibir lista
82 mostrar();
83 break;
84 default:
85 printf(“_____________Opcao invalida_____________\n\n”);
86 }
87 } while (opcao != 0);
88
89 return 0;
90 }
O que está acontecendo na linha 40, onde mostra aux = aux->prox;
Testando tag code...
int idade;
char nome[50];