non passi postoautocodice:void newRecord(SOCKET m_socket,clientData &client) { fp=fopen("database.txt","r"); while(fscanf(fp,"%d %s %s %s",&postoauto.i, &postoauto.cognome, &postoauto.nome, &postoauto.targa)!=EOF ){ printf("%s %s %s","targa trovata", postoauto.targa , "cliente gia presente in parcheggio");} if(!strcmp(client.automobile, postoauto.targa)) { fp=fopen("database.txt","a+"); fseek(fp,0, SEEK_END); int tmp=ftell(fp); if((tmp/52)<30){ fwrite((char*)&client,sizeof(struct clientData),1,fp ); cout<<"Il record # "<< (tmp/52) << "è stato inserito " << endl; cout<< client.firstName <<endl; cout<< client.lastName<<endl; cout<< client.automobile<<endl; int x; x=send(m_socket,(char*)&tmp, 8 , 0); fclose(fp); } else printf("non ci sono posti disponibili"); } else { printf("%s %s %s %s %s ","Cliente", client.firstName, client.lastName, client.automobile, " gia presente in parcheggio"); printf("il cliente sta uscendo dal parcheggio? Y/N"); char ch; cin>>ch; if(ch=='y'){ delete(client); printf("il cliente è uscito"); }; } fclose(fp); }![]()
poi, attento che la scanf("%s" restituisce la stringa finche non trova uno spazio, un tab o un \n,

Rispondi quotando