Article View: es.comp.os.linux.programacion
Article #15966Re: fflush(stdin) se me lo pasa por el forro?
From: Santiago Romero
Date: Thu, 25 May 2000 00:00
Date: Thu, 25 May 2000 00:00
58 lines
2675 bytes
2675 bytes
El 22 May 2000 12:41:12 GMT, J.A. Gutierrez escribi�:
>Santiago Romero <nop_linux@yahoo.com> wrote:
>
>: ocheeeeeee..
>: no se que leches pasa pero en Linux el fflush(stdin) se me lo
> te funcionara por pura suerte, por que el uso que haces de
> fflush es incorrecto, solo puedes flushear streams de escritura.
> (aunque ahora que lo pienso, si que me suena que algun compilador
> para DOS lo admitia como valido y hacia algo...)
si, en MSDOS el fflush() te vac�a el buffer de entrada, de forma
que si tras un getchar habias metido, okjlksdfjlkasjflskdjf<enter>
el fflush() se cargaba todo y el siguiente getchar funcionaba sin
pillarte el segundo caracter como entrada....
>: El primer getchar va, pero el segundo se lo salta :?
>
> no se, envia codigo...
algo tan sencillo como un par de scanfs:
scanf("%d", &algo );
scanf("%s", algo2 );
y otros scanfs...
getchar();
llega un momento en que algunos scanfs se los salta, se los pasa
por el forro, y el getchar tambien... :(
> Depende de lo que quieras hacer, puede ayudarte la siguiente
> cita del Unix FAQ:
solo quiero vaciar el buffer de entrada.
> Ejemplo:
>
> int i,n;
> if (i = ioctl (fileno(stdin), FIONREAD, &n))
> perror("ioctl");
> printf("%d\n",n);
�Y como los extraigo? Con fgetc(stdin)?
nada, que no, se si extraigo los n supuestos caracteres, algo
m�s se queda en el buffer que en un programa luego se me salta
el getchar como si no estuviera, cuando yo quiero hacer una
simple pausa del tipo "Pulse enter para continuar".
salu2.
--
Ruido en la l�nea cortes�a de Telef�nica.
_-----------------------------------------------------_
| NoP / Compiler -- compiler @ jet.es |
|-------------------------------------------------------|
| POWERED BY - Linux RedHat 6.0 - Reg. User #74.821 |
| http://web.jet.es/s.romero |
~-----------------------------------------------------~
Technical Details
Message-ID:
<slrn8iq5fa.mk.compiler@compiler.linux.es>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailReferences:
<slrn8ifed1.190.nop_linux@compiler.linux.es> <8gb9t8$7de$1@news.unizar.es>Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII X-Google-Thread: f86c8,d38036c26efcd863 X-Google-Attributes: gidf86c8,public From: compiler@jet.es (Santiago Romero) Subject: Re: fflush(stdin) se me lo pasa por el forro? Date: 2000/05/25 Message-ID: <slrn8iq5fa.mk.compiler@compiler.linux.es> X-Deja-AN: 627259838 Content-Transfer-Encoding: 8bit References: <slrn8ifed1.190.nop_linux@compiler.linux.es> <8gb9t8$7de$1@news.unizar.es> Content-Type: text/plain; charset=iso-8859-1 Organization: Telefonica Transmision de Datos Mime-Version: 1.0 User-Agent: slrn/0.9.6.2 (Linux) Reply-To: compiler@jet.es Newsgroups: es.comp.os.linux.programacion