Pongo el codigo
Cliente
Código
val=connect (sock_1, (struct sockaddr *) &serv, sizeof (sockaddr)); while (val==-1) { Sleep (1000); val=connect (sock_1, (struct sockaddr *) &serv, sizeof (sockaddr)); } printf ("Conectando...\n Conectado con: %s\n\a", inet_ntoa (serv.sin_addr)); printf ("Ingrese mensaje a enviar:"); fgets (ibuffer, strlen (ibuffer), stdin); send(sock_1,ibuffer, sizeof (ibuffer), 0); //ENVIA MENSAJE printf ("mensaje enviado:%s \n", ibuffer); while (b!=0){ recv (sock_1, vbuffer, sizeof (vbuffer), 0); //RESIVO MENSAJE //std::string sibuffer (ibuffer); printf ("Datos recividos:%s\n",vbuffer); printf ("Ingrese mensaje a enviar:"); fgets (ibuffer, strlen (ibuffer), stdin); b=send(sock_1,ibuffer, sizeof (ibuffer), 0); printf ("mensaje enviado:%s \n", ibuffer); getchar (); }
Servidor
Código
b=recv (sock_1, vbuffer, sizeof (vbuffer), 0); //RESIVO //std::string svbuffer (vbuffer); printf ("datos recividos:%s\n",vbuffer); while (b!=0){ send(sock_1,"Prueba de mensaje", 17, 0); //ENVIO printf ("mensaje enviado \n"); printf ("Resepcion de mensajes\n"); b= recv (sock_1, vbuffer, sizeof (vbuffer), 0); //std::string svbuffer (vbuffer); printf ("datos recividos:%s\n",vbuffer); getchar (); }
Código
//vbuffer e ibuffer son locales del main char vbuffer[512], ibuffer[512];
Citar
Me faltaria limpear el buffer pero de todas formas no logro conseguir enviar ni recivir mensajes