Título: Sber si hay datos en stdin ? Publicado por: lDanny en 25 Mayo 2010, 10:06 am Hola, bueno tengo un problema, lo que pasa es que quiero leer de la entrada standard pero cuando hay datos, pero cuando no hay datos se me queda en bucle esperando a que lleguen datos.
Mi pregunta es como se puede saber si en stdin o entrada standard hay datos para leer o no hay datos. GRacias Título: Re: Sber si hay datos en stdin ? Publicado por: h0oke en 25 Mayo 2010, 10:27 am Recuerda que el teclado es un fichero más.
Código Para ver si hay algo, deberías leer nuevamente el teclado, y preguntar si en esa variable hay algo. Código Si leyeras el teclado con HOLA MUNDO, en nuevo teclado te quedaria "ndo" si no me equivoco. Título: Re: Sber si hay datos en stdin ? Publicado por: lDanny en 25 Mayo 2010, 11:05 am Gracias por la ayuda pero mi problema no es ese creo xD. Bueno igualmente lo he probado y no me va lo que ocurre es que yo no leo del teclado los datos de entrada se los paso mediante tuberias.
ejemplo: : echo "hola" | ./programa esto me va bien pq leo bien la entrada standard : ./programa Me va mal pq se me queda esperando datos. He usado Código: #include <stdio.h> y si lo pruebas ves que cuando ejecuto ./programa se queda esperando. Y gracias por tu rapida ayuda. Título: Re: Sber si hay datos en stdin ? Publicado por: h0oke en 25 Mayo 2010, 11:25 am Te refieres a esto?
Código
Título: Re: Sber si hay datos en stdin ? Publicado por: lDanny en 25 Mayo 2010, 11:36 am La verdad como ves el codigo que me as pasado es exacto lo que me pasa cuando no le paso nada.
Es por eso que quiero saber cuando hay o no hay datos en la entrada. Pq no quiero que se me quede esperando a leer datos. y de nuevo gracias por la ayuda Título: Re: Sber si hay datos en stdin ? Publicado por: h0oke en 25 Mayo 2010, 11:37 am De nadas.
Salu2 Título: Re: Sber si hay datos en stdin ? Publicado por: lDanny en 25 Mayo 2010, 11:39 am Ya pero sabes alguna manera de que no se quede en bucle? al no haber datos en la entrada?
|