[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: fflush(stdin) no limpia por que??



Hola,

fflush más bien es para descriptores de salida si me acuerdo bien, para
descriptores de entrada tiene un comportamiento "inesperado" (en solaris
hace lo que supones que debería hacer)

Una chapuza como una casa "made in my university":

static void fflush() {
   fflush(stdout);
   stdin->_IO_read_ptr = stdin->_IO_read_base;
   stdin->_IO_read_end = stdin->_IO_read_base;
   fflush(stdin);
}

no "sincroniza", sinó que si lo miras bien y sigues las estructuras por la
libc y demás mueve los punteros a saco y se carga lo que pille del stdin

Funcionar funciona... pero mejor usar ncurses :-)


On Mon, 1 Jul 2002, Esteban Garcia Cuesta wrote:

> Hola,
>   Estoy usando la funcion de fflush (stdin)para limpiar el buffer de
> entrada, pero parece que no hace nada. Lo tengo puesto justo antes de un
> getchar() y este me coge basura, sin quedarse a la espera por teclado que
> es lo que deberia hacer si el buffer esta vacio (ahi esta la utilidad de
> fflush).
>   Sabeis porque puede ser? Hace tiempo que no programo en C pero no
> recuerdo que esto me pasara.
>    Muchas gracias
> 	Esteban.
>
>
>
> --
> To UNSUBSCRIBE, email to debian-user-spanish-request@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
>

----
Carles Pina i Estany
	carles@pinux.info || is08139@salleURL.edu
	http://pinux.info
	http://www.salleURL.edu/~is08139/


--
To UNSUBSCRIBE, email to debian-user-spanish-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org



Reply to: