Esque en algunos lados leeí que sí, en otros que no...
Y estoy confundido :S
Para qué sirve, en primera, y sí o no es recomendable usarlo antes/después de un scanf... y si es así, cuándo es recomendable hacerlo?
Saludos!
| |||
Es recomendable usar fflush(stdin) antes/después de un scanf? Esque en algunos lados leeí que sí, en otros que no... Y estoy confundido :S Para qué sirve, en primera, y sí o no es recomendable usarlo antes/después de un scanf... y si es así, cuándo es recomendable hacerlo? Saludos! |
| |||
Respuesta: Es recomendable usar fflush(stdin) antes/después de un scanf? fflush(stdin) sirve para limpiar el buffer de entrada de teclado yo lo suelo poner al inicio del main y después de un scanf o un gets para evitar que guarde un enter en el buffer y lo malinterprete en siguientes bucles. Espero haberte sido de ayuda |
| |||
Respuesta: Es recomendable usar fflush(stdin) antes/después de un scanf? Espero que esto te sea de ayuda ;) Cita: Fuente de la cita: [URL="http://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html"]Lo que no hay que hacer en C++ básico[/URL]
Iniciado por Littlehorse 2) fflush(stdin); fflush(stdin) es un invitado casi diario. Pocas veces pasa un dia sin que alguien lo recomiende o lo mencione como la solucion! a los malos comportamientos de las pausas en los programas. STDIN, como su nombre lo indica, significa 'Standard input'. Es decir, el ingreso por teclado. Acorde al Standard, fflush espera solamente un stream de salida (STDOUT: 'Standard Output) por lo que el comportamiento con streams de entrada como STDIN es indefinido. Por mas que en algunas plataformas funcione, o que en algunos compiladores funcione, no deberia ser utilizado. Por el otro lado, para evitar esas pausas fastidiosas es necesario evitar las funciones que dejan basura por doquier (como scanf();) y utilizar funciones como la ya mencionada fgets(); |
| |||
Respuesta: Es recomendable usar fflush(stdin) antes/después de un scanf? Entonces cómo se puede limpiar el buffer de entrada? =/ |
Etiquetas: |