
Originariamente inviata da
oregon
In questa if
if(record.cognome[COGNOME-1] != '\n') while(getchar() != '\n');
perchè non hai usato la strlen come nell'esempio che ti ho mostrato?
perchè sono un pò rimba
.....cmq intanto ti rigrazio....inoltre dal lato server avevo il problema che quello che mandavo veniva mal stampato su di un file....così mi sembra di aver risolto:
codice:
printf("\nInserisci il cognome: ");fflush(stdout);
fgets(record.cognome,NOME,stdin);
if(record.cognome[strlen(record.cognome)-1] != '\n') while(getchar() != '\n');
if(record.cognome[strlen(record.cognome)-1] = '\n') record.cognome[strlen(record.cognome)-1] = '\0';
probabilmete mi prendeva uno '\n' da qualche parte... ora mi chiedevo che tipo di controlli (sui segnali) faccio sulla fgets.....una cosa del genere può andare??
codice:
printf("\nInserisci il cognome: ");fflush(stdout);
while( fgets(record.cognome,NOME,stdin)==NULL){
if(errno != EINTR){
perror("\nErrore fgets, errore tipo:");
chiusuraClient();
}
}
if(record.cognome[strlen(record.cognome)-1] != '\n') while(getchar() != '\n');
if(record.cognome[strlen(record.cognome)-1] = '\n') record.cognome[strlen(record.cognome)-1] = '\0';