Mi dovete aiutare...sto realizzando una rubrica con le liste, ma mi sono trovato davanti un errore che nn capisco.
Praticamente compilando mi viene segnalata la necessità del lvalue nell'assegnamento...ma il lvalue c'è....forse mi da errore perchè l'assegnamento è tra due stringhe???
Sotto c'è il codice del programma...vi prego provate a compilarlo anche voi e vedete l'errore....

codice:
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>

typedef char stringa[40];
struct membro{
     stringa nome;
     stringa cognome;
     stringa citta;
     stringa numero_casa;
     stringa cellulare;
     stringa email;
     membro * succ;
};
membro * lista=NULL;
membro * first=NULL;
membro * prev;
membro * next;

void cornice(void);
void aggiungi(void);
void modifica(void);
void cancella(void);
void ricerca(void);
void visualizza(void);
int scelta, termina=0, nomu=0;

int main(){
     clrscr();
     cornice();
     do{
	 gotoxy(60,18);
	 cin>>scelta;
	 switch(scelta){
	     case 1:
		 aggiungi();
		 break;
	     case 2:
		 modifica();
		 break;
	     case 3:
		 cancella();
		 break;
	     case 4:
		 ricerca();
		 break;
	     case 5:
		 visualizza();
		 break;
	     case 6:
		 termina=1;
		 break;
	     default:
		 gotoxy(13,23);
		 cout<<"!!! ATTENZIONE !!! Devi inserire uno dei valori indicati";
		 getch();
		 gotoxy(13,23);
		 cout<<"                                                        ";
		 gotoxy(60,18);
		 cout<<"     ";
	 }
     }while(termina==0);
     getch();
     return 0;
}

void aggiungi(void){
     int i=1, num_membri=0, ins=0;
     stringa nomex, cognomex, cittax, cellx, casax, emailx;
     clrscr();
     nomu=1;
     cornice();
     gotoxy(24,3);
     cout<<"AGGIUNTA DI UN MEMBRO ALLA RUBRICA";
     gotoxy(5,7);
     cout<<"Inserisci il NOME : ";
     cin>>nomex;
     gotoxy(5,9);
     cout<<"Inserisci il COGNOME : ";
     cin>>cognomex;
     gotoxy(5,11);
     cout<<"Inserisci la CITTA' : ";
     cin>>cittax;
     gotoxy(5,13);
     cout<<"Inserisci il NUMERO DI CELLULARE : ";
     cin>>cellx;
     gotoxy(5,15);
     cout<<"Inserisci il NUMERO DI CASA : ";
     cin>>casax;
     gotoxy(5,17);
     cout<<"Inserisci l'INDIRIZZO DI POSTA ELETTRONICA : ";
     cin>>emailx;
     num_membri++;
     while(i<=num_membri){
	 if(first==NULL){
	      lista=new(membro);
	      lista->nome=nomex;
	      lista->cognome=cognomex;
	      lista->citta=cittax;
	      lista->cellulare=cellx,
	      lista->numero_casa=casax;
	      lista->email=emailx;
	      lista->succ=NULL;
	      first=lista;
	 }
	 else{
	      lista=first;
	      ins=0;
	      while(ins==0){
		   if(lista->succ!=NULL){
			 if(strcmp(cognomex,lista->cognome)>0){
				    prev=lista;
				    lista=lista->succ;
				    next=lista;
			 }
			 else{
				    if(lista!=first){
					     prev->succ=new(membro);
					     lista=prev->succ;
					     lista->nome=nomex;
					     lista->cognome=cognomex;
					     lista->citta=cittax;
					     lista->cellulare=cellx,
					     lista->numero_casa=casax;
					     lista->email=emailx;
					     lista->succ=next;
					     ins=1;
				    }
				    else{
					     next=first;
					     lista=new(membro);
					     lista->nome=nomex;
					     lista->cognome=cognomex;
					     lista->citta=cittax;
					     lista->cellulare=cellx,
					     lista->numero_casa=casax;
					     lista->email=emailx;
					     lista->succ=next;
					     first=lista;
					     ins=1;
				    }
			 }
		   }
		   else{
			 if(strcmp(cognomex,lista->cognome)>0){
				    lista->succ=new(membro);
				    lista=lista->succ;
				    lista->nome=nomex;
				    lista->cognome=cognomex;
				    lista->citta=cittax;
				    lista->cellulare=cellx,
				    lista->numero_casa=casax;
				    lista->email=emailx;
				    lista->succ=NULL;
				    ins=1;
			 }
			 else{
				    if(prev!=NULL){
					     prev->succ=new(membro);
					     lista=prev->succ;
					     lista->nome=nomex;
					     lista->cognome=cognomex;
					     lista->citta=cittax;
					     lista->cellulare=cellx,
					     lista->numero_casa=casax;
					     lista->email=emailx;
					     lista->succ=next;
					     ins=1;
				    }
				    else{
					     next=first;
					     lista=new(membro);
					     lista->nome=nomex;
					     lista->cognome=cognomex;
					     lista->citta=cittax;
					     lista->cellulare=cellx,
					     lista->numero_casa=casax;
					     lista->email=emailx;
					     lista->succ=next;
					     first=lista;
					     ins=1;
				    }
			 }
		   }
	      }
	 }
	 i++;
     }
     clrscr();
     nomu=0;
     cornice();
}

void modifica(void){
}

void cancella(void){
}

void visualizza(void){
}

void ricerca(void){
     int trovato=0;
     stringa nomet;
     clrscr();
     nomu=1;
     cornice();
     lista=first;
     gotoxy(5,7);
     cout<<"Inserisci il nome del membro da trovare : ";
     cin>>nomet;
     while((trovato==0)&&(lista!=NULL)){
	  if(strcmp(lista->nome,nomet)==0){
	      trovato=1;
	  }
	  else
	      lista=lista->succ;
     }
     if(trovato==0){
	  gotoxy(4,10);
	  cout<<"Il membro di nome " <<nomet <<" non e' presente in rubrica.";
     }
     else{
	  gotoxy(4,10);
	  cout<<"Ecco i dati del membro di nome " <<nomet <<" :";
	  gotoxy(6,12);
	  cout<<"Nome: "<<lista->nome;
	  gotoxy(6,14);
	  cout<<"Cognome: "<<lista->cognome;
	  gotoxy(6,16);
	  cout<<"Citta': "<<lista->citta;
	  gotoxy(6,18);
	  cout<<"Numero del cellulare: "<<lista->cellulare;
	  gotoxy(6,20);
	  cout<<"Numero di casa: "<<lista->numero_casa;
	  gotoxy(6,22);
	  cout<<"Indirizzo email: "<<lista->email;
     }
     getch();
     clrscr();
     nomu=0;
     cornice();
}

void cornice(void){
     char ch;
     int i;
     ch=201;
     gotoxy(1,1);
     cout<<ch;
     ch=187;
     gotoxy(80,1);
     cout<<ch;
     ch=205;
     for(i=0;i<78;i++){
	 gotoxy(2+i,1);
	 cout<<ch;
	 gotoxy(2+i,5);
	 cout<<ch;
	 gotoxy(2+i,25);
	 cout<<ch;
     }
     ch=186;
     for(i=0;i<23;i++){
	 gotoxy(1,2+i);
	 cout<<ch;
	 gotoxy(80,2+i);
	 cout<<ch;
     }
     ch=204;
     gotoxy(1,5);
     cout<<ch;
     ch=185;
     gotoxy(80,5);
     cout<<ch;
     ch=200;
     gotoxy(1,25);
     cout<<ch;
     ch=188;
     gotoxy(80,25);
     cout<<ch;
     if(nomu==0){
       gotoxy(24,3);
       cout<<"RUBRICA DEL GRUPPO 5 2004/2005";
       gotoxy(5,7);
       cout<<"1. Aggiungi numero";
       gotoxy(5,9);
       cout<<"2. Modifica numero";
       gotoxy(5,11);
       cout<<"3. Cancella numero";
       gotoxy(5,13);
       cout<<"4. Ricerca  numero";
       gotoxy(5,15);
       cout<<"5. Visualizza cognomi della rubrica";
       gotoxy(5,17);
       cout<<"6. Esci dalla rubrica";
       gotoxy(15,20);
       cout<<"FAI LA TUA SCELTA >>> Inserisci un valore : ";
     }
}