Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/01/2009, 13:12
karkoma
 
Fecha de Ingreso: enero-2009
Mensajes: 3
Antigüedad: 15 años, 4 meses
Puntos: 0
problemas con printf

Hola: soy nuevo en el foro. Me presento y mando un saludo a todo el mundo.

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:
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");
. . .
Pues bien, el primer printf no se imprime hasta que se conecta algun cliente a este programa servidor.

En cambio si hago:

Cita:
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");
. . .
Si funciona, pero me pone el OK en una nueva linia, obviamente....

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.