Problema de caché de programación C
fflush(stdin);
Esta declaración actualiza el flujo de entrada y borra el exceso de datos en el flujo de entrada, por ejemplo
printf("\n Introduzca letras minúsculas: ");
a=getchar();
fflush(stdin);
b=a-32;
a=getchar();
p>
Si ingresa a b c
Entonces el carácter a se pasará a la variable a y los demás caracteres b c se borrarán. Entonces la declaración
a = getchar();
se acepta nuevamente, pero si:
printf("\n Por favor ingrese una letra minúscula: ")
a=getchar();
b=a-32
a=getchar()
Ingrese a b c lt; ; entergt;
Luego se pasa a a. Después de ejecutar b=a-32, el carácter b en el búfer se pasará a a.