Ciao ragazzi
devo inviare delle STRINGHE da un client ad un server da riga di comando
il client li legge e li deve inviare al server
Premesso che io da client invio prima la lunghezza della stringa sul socket e poi dopo la stringa effettiva
esempio
invio 5 e poi MARCO
così io da lato server saprò prima il numero di caratteri da leggere e poi la stringa effettiva
il mio problema e che il server non riceve effettivamente le stringhe che gli mando
vi mando un pezzo ( dato che poi si ripete per le altre variabili come il cognome la materia la data ecc)
CLIENT
strcpy(nomeprof,argv[4]); //NOME PROFESSORE//
n=strlen(nomeprof);
printf(" nome ===>%d\n " ,n);
sprintf(strlung,"%d", n);
write(cli_fd,strlung,strlen(strlung));
write(cli_fd,nomeprof,strlen(nomeprof));
SERVER
read(client_fd,strlung,3); /* leggo il NOME PROFESSORE*/
lung=atoi(strlung);
read(client_fd,nomeprof,lung);
n=strlen(nomeprof);
printf("nomelung ===>%d\n " ,lung); // stampa lunghezza stringa ricevuta
write(1,nomeprof,lung);
write(1,"\n",1);
se poi è neccessario vi invio tutto il codice
grazie per le risposte

Rispondi quotando