Il programma è molto semplice sto modificando un programma già caricato su questo forum per migliorarlo e esercitarmi sulle pile però non va e non capisco cosa sbaglio

Questo è il mio file txt

rossi
3321
lorenzo
3345
ferrante
2134
lorenzo
3345

Questo è la mia libreria :



codice:
#include <iostream>
#include <cstdlib>
#include <fstream>
#include <cstring>


using namespace std;


#define N 100


typedef char Stringa [N];


typedef struct {
    
    Stringa Nome;
    int Numero;
    
}Lista;


typedef Lista *Nodo;


void crea_lista(Nodo &L);
void crea_nodo(Nodo , int, Stringa);
void append(Nodo , int, Stringa );
void stampa_lista(Nodo L);
Queste sono le mie funzioni:

codice:
#include "ordinamento.h"

void crea_lista(Nodo &L){
    
    fstream file;
    Stringa nome_file, Nome;
    int num;
    cin.getline(nome_file, N-1, '\n');
    file.open(Nome, ios::in);
    if(!file){
        
        cout<<"Inserimento nome file non trovato \n";
        exit(1);
        
    }else{
        
        file>>Nome;
        file>>num;
        crea_nodo(L, Nome, num);
        
        while(!file.eof()){
            
            file>>Nome;
            file>>num;
            append(L, Nome, num)
            
        }
        
    }
    
}




void crea_nodo(Nodo &Temp, Stringa professore, int n){
    
    Temp= new Lista;
    Temp->Nome=professore;
    Temp->Numero=n;
    Temp->next=NULL;
    
}


void append(Nodo &Testalista, int val, Stringa N){
    
    Nodo prec, corr;
    
    if(Testalista==NULL){
        
        crea_nodo(Testalista,N, val);
        
    }else{
        
        corr=Testalista;
        prec=NULL;
        
        while(corr!NULL){
            
        prec=corr
        corr=corr->next;
        
        }
        
    crea_nodo(prec->next, N, val);
    
    }
    
}


void stampa_lista(Nodo L){
    
    while(L!=NULL){
        
        cout<<" \n"<<L->Nome;
        cout<<" \n"<<L->Numero;
        L=L->next=NULL;
        
    }
    
}




Questo e il mio main

codice:
 #include "ordinamento.h"

int main{
    
    Nodo L1;
    crea_lista(L1);
    stampa_lista(L1);
    
}

Questi sono gli errori :

Immagine.jpg