getchar y enter
Buenas, la cosa es que estoy confuso con la funci贸n getchar():
hice un programa para probar:
#include <stdio.h>
int main()
{
char letra ;
while(letra != 'z'){
letra = getchar();
if(letra == 'z') printf("Letra introducida: z, cerrando programan");
else printf("Letra introducida: %cn", letra);
}
return 0;
}
y al darle enter para introducir una letra en el momento del getchar, me introducia la letra propia letra enter.
La chapucera soluci贸n fue esta:
#include <stdio.h>
int main()
{
char letra ;
while(letra != 'z'){
letra = getchar();
getchar();
if(letra == 'z') printf("Letra introducida: z, cerrando programan");
else printf("Letra introducida: %cn", letra);
}
return 0;
}
poner un getchar mas para que el primera me capture la tecleada, y el 2 la tecla enter.
Cual es la soluci贸n "bien resuelta", que no con ese apa帽o xD
hice un programa para probar:
#include <stdio.h>
int main()
{
char letra ;
while(letra != 'z'){
letra = getchar();
if(letra == 'z') printf("Letra introducida: z, cerrando programan");
else printf("Letra introducida: %cn", letra);
}
return 0;
}
y al darle enter para introducir una letra en el momento del getchar, me introducia la letra propia letra enter.
La chapucera soluci贸n fue esta:
#include <stdio.h>
int main()
{
char letra ;
while(letra != 'z'){
letra = getchar();
getchar();
if(letra == 'z') printf("Letra introducida: z, cerrando programan");
else printf("Letra introducida: %cn", letra);
}
return 0;
}
poner un getchar mas para que el primera me capture la tecleada, y el 2 la tecla enter.
Cual es la soluci贸n "bien resuelta", que no con ese apa帽o xD
-Prueba a insertar esta l铆nea justo antes del getchar:
fflush(stdin);//Pone a punto la funci贸n getchar liberando la memoria
fflush(stdin);//Pone a punto la funci贸n getchar liberando la memoria
