Espero que me podais ayudar por que la verdad es que ya no se que hacer.
En mi practica de Redes de computadores tengo varios printf algunos sin un \n al final, por ejemplo:
Cita:
Pues bien, el primer printf no se imprime hasta que se conecta algun cliente a este programa servidor.while (1)
{
printf("Esperamos conexion de algun cliente...");
size=sizeof(dir_socket_R);
error=recvfrom(sock_UDP,buffer,TAM,0,(struct sockaddr *) &dir_socket_R,&size);
//Si ha habido un error en el recvfrom el programa descartara la petición i volvera
//a esperar otra peticion
if (comprovarErrorRecvfrom (error) != 0) continue;
printf ("OK\n");
. . .
{
printf("Esperamos conexion de algun cliente...");
size=sizeof(dir_socket_R);
error=recvfrom(sock_UDP,buffer,TAM,0,(struct sockaddr *) &dir_socket_R,&size);
//Si ha habido un error en el recvfrom el programa descartara la petición i volvera
//a esperar otra peticion
if (comprovarErrorRecvfrom (error) != 0) continue;
printf ("OK\n");
. . .
En cambio si hago:
Cita:
Si funciona, pero me pone el OK en una nueva linia, obviamente....while (1)
{
printf("Esperamos conexion de algun cliente...\n");
size=sizeof(dir_socket_R);
error=recvfrom(sock_UDP,buffer,TAM,0,(struct sockaddr *) &dir_socket_R,&size);
//Si ha habido un error en el recvfrom el programa descartara la petición i volvera
//a esperar otra peticion
if (comprovarErrorRecvfrom (error) != 0) continue;
printf ("OK\n");
. . .
{
printf("Esperamos conexion de algun cliente...\n");
size=sizeof(dir_socket_R);
error=recvfrom(sock_UDP,buffer,TAM,0,(struct sockaddr *) &dir_socket_R,&size);
//Si ha habido un error en el recvfrom el programa descartara la petición i volvera
//a esperar otra peticion
if (comprovarErrorRecvfrom (error) != 0) continue;
printf ("OK\n");
. . .
A que puede ser debido que no funcione el primer trozo de codigo? He intentado de todo: poner un \r, \t, \0, con la sentencia puts (que por desgracia añade un \n al final por defecto)...
Gracias.