[C con Clase] guardar string o caracter sin presionar enter en ANSI C

D1e6o! diegogeid en gmail.com
Mar Jul 7 06:13:55 CEST 2009


El 30 de junio de 2009 22:26, Diego<bruceleechile en gmail.com> escribió:
> Hola a todos
>
>  Mi consulta es la siguiente, quiero saber si existe alguna forma de guardar un string o caracter ingresado por el usuario sin presionar la tecla enter, por ejemplo:
>
>  temp[15] = "";
>  printf("Ingrese frase: ");
>
>
> si el usuario escribe:   a
> eso se guardara automaticamente en el string temp, para trabajar luego con él, una vez lo utilizamos (se supone esto pasa de forma invisible al usuario y de forma instantanea xD!), el usuario a esa a escrita anteriormente le añade otra letra por ejemplo:    m   quedando asi   am
> se guarde am en el string temp que se supone ya estara limpio nuevamente para trabajar nuevamente con éste string.
>
> La idea es que se guarde en el string sin presionar la tecla ENTER, queria sacar una idea del getchar q es ANSI C, pero no se como trabaja internamente, ni he podido encontrar su codigo.
>
> Espero me puedan ayudar :)
>
> Saludos a todos y gracias de antemano ;)
>
>
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>

El problema es que no es una función de c, sino que eso depende del
hardware y sistema operativo.
La lectura de caracteres no es una librería de c, aunque parezca, sino
que son funciones del sistema operativo, es por eso que no existe.
Supongo que tratando a stdin como un archivo (en definitiva, es del
tipo FILE *) se debe poder crear esa función, pero no encuentro algo
así, debería poder utilizarse con funciones de lectura de archivo,
como fseek, etc. No me imagino como saber cuando se presiona una nueva
tecla en c, debería ser cuando se actualize stdin




Más información sobre la lista de distribución Cconclase