piccole modifiche
This commit is contained in:
parent
13c736e040
commit
b7b42264fc
1 changed files with 53 additions and 51 deletions
104
client.c
104
client.c
|
@ -149,62 +149,64 @@ int main(int argc, char *argv[])
|
||||||
fflush(stdout); //forza la scrittura dei dati bufferizzati sullo stream
|
fflush(stdout); //forza la scrittura dei dati bufferizzati sullo stream
|
||||||
return(4);
|
return(4);
|
||||||
}
|
}
|
||||||
fflush(stdout);
|
do{
|
||||||
scelta=menu();
|
fflush(stdout);
|
||||||
if(scelta==0)
|
scelta=menu();
|
||||||
messaggio="make\n";
|
if(scelta==0)
|
||||||
if(scelta==1)
|
messaggio="make\n";
|
||||||
messaggio="sell\n";
|
if(scelta==1)
|
||||||
if(scelta==2){
|
messaggio="sell\n";
|
||||||
scanf("%lf",&prezzo);
|
if(scelta==2){
|
||||||
messaggio="set price"+prezzo+"\n";
|
scanf("%lf",&prezzo);
|
||||||
|
messaggio="set price"+prezzo+"\n";
|
||||||
|
}
|
||||||
|
if(scelta==3){
|
||||||
|
scanf("%u",&bitto);
|
||||||
|
messaggio="buy bitto"+bitto;
|
||||||
}
|
}
|
||||||
if(scelta==3){
|
if(scelta==4){
|
||||||
scanf("%u",&bitto);
|
scanf("%u",&farina);
|
||||||
messaggio="buy bitto"+bitto;
|
messaggio="buy flour"+farina;
|
||||||
}
|
}
|
||||||
if(scelta==4){
|
|
||||||
scanf("%u",&farina);
|
/* scrittura => invio del messaggio al server */
|
||||||
messaggio="buy flour"+farina;
|
len = strlen(messaggio)+1;
|
||||||
}
|
nwrite=0;
|
||||||
}
|
printf ("lunghezza messaggio %d write()\n", len);
|
||||||
|
fflush(stdout);
|
||||||
|
|
||||||
/* scrittura => invio del messaggio al server */
|
while( (n=write(socketfd, &(messaggio[nwrite]), len-nwrite)) >0 )
|
||||||
len = strlen(messaggio)+1;
|
nwrite+=n;
|
||||||
nwrite=0;
|
if(n<0) {
|
||||||
printf ("lunghezza messaggio %d write()\n", len);
|
char msgerror[1024];
|
||||||
fflush(stdout);
|
sprintf(msgerror,"errore operazione di write()[err %d] ",errno);
|
||||||
while( (n=write(socketfd, &(messaggio[nwrite]), len-nwrite)) >0 )
|
perror(msgerror);
|
||||||
nwrite+=n;
|
return(5);
|
||||||
if(n<0) {
|
}
|
||||||
char msgerror[1024];
|
|
||||||
sprintf(msgerror,"errore operazione di write()[err %d] ",errno);
|
|
||||||
perror(msgerror);
|
|
||||||
return(5);
|
|
||||||
}
|
|
||||||
|
|
||||||
printf("stringa spedita: %s\n", messaggio);
|
printf("stringa spedita: %s\n", messaggio);
|
||||||
fflush(stdout); //forza la scrittura dei dati bufferizzati sullo stream
|
fflush(stdout); //forza la scrittura dei dati bufferizzati sullo stream
|
||||||
|
|
||||||
/* lettura della risposta */
|
/* lettura della risposta */
|
||||||
nread=0;
|
nread=0;
|
||||||
printf ("read()\n");
|
printf ("read()\n");
|
||||||
while( (len>nread) && ((n=read(socketfd, &(buffer[nread]), len-nread )) >0))
|
while( (len>nread) && ((n=read(socketfd, &(buffer[nread]), len-nread )) >0))
|
||||||
{
|
{
|
||||||
nread+=n; // aggiorna il numero di byte letti
|
nread+=n; // aggiorna il numero di byte letti
|
||||||
printf("read effettuata, risultato n=%d len=%d nread=%d \n", n, len, nread);
|
printf("read effettuata, risultato n=%d len=%d nread=%d \n", n, len, nread);
|
||||||
}
|
}
|
||||||
if(n<0) // si e' verificato un errore
|
if(n<0) // si e' verificato un errore
|
||||||
{
|
{
|
||||||
char msgerror[1024];
|
char msgerror[1024];
|
||||||
sprintf(msgerror,"errore in lettura read() [err %d] ",errno);
|
sprintf(msgerror,"errore in lettura read() [err %d] ",errno);
|
||||||
perror(msgerror); // visualizza la descrizione dell'errore
|
perror(msgerror); // visualizza la descrizione dell'errore
|
||||||
return(6);
|
return(6);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* stampa risultato */
|
/* stampa risultato */
|
||||||
printf("stringa ricevuta: %s\n", buffer);
|
printf("stringa ricevuta: %s\n", buffer);
|
||||||
fflush(stdout); //forza la scrittura dei dati bufferizzati sullo stream
|
fflush(stdout); //forza la scrittura dei dati bufferizzati sullo stream
|
||||||
|
}while(scelta!=5);
|
||||||
|
|
||||||
/* chiusura socket */
|
/* chiusura socket */
|
||||||
close(socketfd);
|
close(socketfd);
|
||||||
|
|
Loading…
Reference in a new issue