I created a person-type structure and I want to use it in a linked list, but the following errors appear:
'No' has no member named 'data', 'No' has no member named 'prox' and unknow type name 'p'.
The program did not even run, can anyone help me?
The .h file is as follows:
#ifndef Pessoa
#define Pessoa
typedef struct pessoa{
char nome[25];
char sobrenome[25];
int registro;
}Pessoa;
typedef struct no{
Pessoa dados;
struct no *prox;
}No;
typedef struct lista{
No *cabeca;
No *cauda;
int tamanho;
}Lista;
No* criaNo(Pessoa p);
Lista* criaLista();
void inserir(Lista *l, Pessoa p, int posicao);
void remover(Lista* l, int registro); //pesquisa registro e remove a pessoa
void imprimeLista(Lista* l);
void destruirLista(Lista* l);
#endif
The .c file is as follows:
#include <stdio.h>
#include <stdlib.h>
#include "Pessoa.h"
No* criaNo(Pessoa p)
{
No* n;
n=(No*)malloc(sizeof(No));
n->dados = p;
n->prox = NULL;
return n;
}
Lista* criaLista()
{
Lista* l = (Lista*)malloc(sizeof(Lista));
l->cabeca = NULL;
l->cauda = NULL;
l->tamanho = 0;
return l;
}
void inserir(Lista *l, Pessoa p, int posicao);
{
//já está pronta, porém não achei necessário colocá-la
}
void remover(Lista* l, int registro)
{
//já está pronta, porém não achei necessário colocá-la
}
void imprimeLista(Lista* l)
{
//já está pronta, porém não achei necessário colocá-la
}
void destruirLista(Lista *l)
{
//já está pronta, porém não achei necessário colocá-la
}