Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

komunikacija sa serverom

[es] :: C/C++ programiranje :: komunikacija sa serverom

Strane: 1 2

[ Pregleda: 4327 | Odgovora: 23 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

insomniac_st
Tomislav Vukman
Split

Član broj: 17456
Poruke: 45
*.transintercom.HR.

Sajt: adria.fesb.hr/~tovukman


Profil

icon Re: komunikacija sa serverom14.09.2005. u 08:51 - pre 226 meseci
Shvatio sam neke stvari pa sam napravio ovo:

Code:
 
            int br=read (create_socket,buffer,strlen(buffer));
         printf("\nprimljeno: %d\n",br);
    
        if (br > 0)
        {
          buffer[br] = '\0';
          printf (buffer);
        }
      else if (br == 0)
        break;
      else if (br < 0)
          printf("\nGreska!");
       


I imam ispis da dobijem 4 bajta i ne prikaze mi se sve kako treba. Moze neki primjer kako bi rjesio punjenje buffera i ispravan ispis?
######################
# Zivio mi ti 100 godina rodjo! #
######################
 
Odgovor na temu

yooyo

Član broj: 4891
Poruke: 1101
195.252.89.*



Profil

icon Re: komunikacija sa serverom14.09.2005. u 09:52 - pre 226 meseci
Ocito ne kapiras... pokusaj na ovaj nacin.

Code:

slanje:
send(create_socket,naredba,strlen(naredba)+1); // posalji string i \0 na kraju

prijem:
int pos=0, len;
do
{
 len = recv(create_socket, buffer + pos, 1000,0); // len vraca ukupan broj procitanih. 1000 je max duzina buffera
 pos = pos + len;
} while (buffer[pos-1] != 0);


yooyo
 
Odgovor na temu

insomniac_st
Tomislav Vukman
Split

Član broj: 17456
Poruke: 45
*.transintercom.HR.

Sajt: adria.fesb.hr/~tovukman


Profil

icon Re: komunikacija sa serverom14.09.2005. u 10:56 - pre 226 meseci
Pokusao sam, ne radi, problem je u do-while petlji. Provjerio sam da uredno posalje, onda udje u petlju i tu program stane ...
######################
# Zivio mi ti 100 godina rodjo! #
######################
 
Odgovor na temu

yooyo

Član broj: 4891
Poruke: 1101
195.252.89.*



Profil

icon Re: komunikacija sa serverom14.09.2005. u 11:34 - pre 226 meseci
Probaj da debagujes program red po red, vidi sta se desva u do-while petlji. Mozda je konekcija zatvorena pa recv vraca SOCKET_ERROR u len.

Jos nesto.. ako je u pitanju server program, onda imas treba da ims jedan socket u listen modu i sa accept prihvatas nove konekcije. Accept vraca NOVI socket za svakog klijenta koji se poveze i sva dalja komunikacija sa tim klijentom ide preko tog novog socket-a.

yooyo
 
Odgovor na temu

[es] :: C/C++ programiranje :: komunikacija sa serverom

Strane: 1 2

[ Pregleda: 4327 | Odgovora: 23 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.