[LUG.ro Mix] Preguntita de DoWhile en C
Nicolás Aimetti
lugro-mix@lugro.org.ar
Fri, 30 Jun 2006 10:59:21 +0000
Matias Sanchez wrote:
> Si, ya te entiendo. Algo parecico tenia pensado hacer hoy a la mañana.
> Porque ayer me fui a dormir pensado en declarar un array en lugar de un
> int.
> Si, la verdad no es nada ligero. No hay una forma mas práctica? Tal ves
> es mas conveniente darle dos cotas al while una minima y una maxima,
> considerando que la edad no puede ser mayor que 100, pero igualmente si
> hago eso e ingreso un caracter en lugar de un dígito, se cuelga el
> while. Supongo que porque asume el valor Ascii del caracter:
El while se cualga porque cuando el scanf no machea lo que quiere leer
(un entero en este caso) entonces no lee nada, por tanto cada vez que lo
invocas lee lo mismo del mismo buffer de entrada ( o sea, como nadie lee
el valor del buffer es scanf sigue leyendo una y otra vez lo mismo). Por
lo general es scanf no es tan copado como parece. Recomendación, leé
carecteres y despues fijate que pasa con los mismos, algo al estilo del
ejemplo anterior.
Saludos,
Nicolás.