Ho costruito un programma con liste in cui vi è l'estrazione in testa e l'inserimento in testa, il programma non mi parte ma non penso ci siano grossi errori, secondo voi dove ho sbagliato?
#include <cstdlib>
#include <iostream>
using namespace std;
struct persona
{ char nome[20];
int eta;
persona* successiva;
};
typedef persona* lista;
lista creaLista (int n)
{
lista p, p0 = 0;
for (int i = 1; i <= n; i++)
{
p = new persona;
cin >> p->nome >> p->eta;
p->successiva = p0;
p0 = p;
}
return p0;
}
bool estTesta (lista& inizio, int& persona)
{lista p = inizio;
if (p == 0) return false;
persona.nome = p->nome;
persona.eta = p->eta;
inizio = p->succ;
delete p;
returne true;
}
void insTesta (lista& inizio, int persona)
{
lista p = new elem;
p->nome = persona.nome;
p->succ = inizio;
inizio = p;
}
int main()
{
const int numero_persone = 10;
creaLista(numero_persone);
estTesta (numero_persone);
insTesta (numero-persona);
return 0;
system ("pause");
}