Hola a todos. Estoy teniendo dificultades en el aprendizaje de C con el compilador en línea GCC, del Mac, y eso que ya he programado en C, y CPP, pero hace años, y era el Turbo C de Borland. !Lo que habrá llovido desde entonces! Bueno, pues mi problema es que quería recoger una entrada de teclado de un sólo carácter (ideal para un menú de consola a la antigua usanza), pero lo que encuentro son funciones como getchar(), que me obligan a pulsar INTRO, o getC(), que no la encuentra el compilador (no sé que cabecera tengo que poner). ¿Alguien puede ayudarme? Gracias anticipadas. También me iría bien disponer de algún listado de qué funciones soporta el GCC (o mi versión de GCC) y qué cabeceras hay que poner. Gracias.
entre Desarrolladores
Recibe ayuda de expertos
Registrate y pregunta
Es gratis y fácil
Recibe respuestas
Respuestas, votos y comentarios
Vota y selecciona respuestas
Recibe puntos, vota y da la solución
Pregunta
C Unix (GCC): cómo introducir un sólo carácter sin pulsar INTRO
- preguntó
- Software
- 318 Vistas
- 1 Respuestas
- abierta
1 Respuesta
Hola @JaimeReus,
yo también tengo el C oxidado... leyendo por ahí, la biblioteca ncurses.h parece que permite leer un caracter sin presionar ENTER.
Yo buscando por ahí y recordando viejos tiempos, hice este ejemplo que lee de a 1 caracter sin presionar ENTER y que podrías integrar a tu ciclo de lectura para el menú "a la antigua usanza":
#include <stdio.h>
#include <unistd.h>
#include <termios.h>
int mygetch();
int main()
{
char ch;
while((ch=mygetch())!='*')
printf("\nPulsaste: %c\n", ch);
return 0;
}
int mygetch( ) {
struct termios oldt, newt;
int ch;
tcgetattr( STDIN_FILENO, &oldt );
newt = oldt;
newt.c_lflag &= ~( ICANON | ECHO );
tcsetattr( STDIN_FILENO, TCSANOW, &newt );
ch = getchar();
tcsetattr( STDIN_FILENO, TCSANOW, &oldt );
return ch;
}
Saludos cordiales!
Por favor, accede o regístrate para añadir un comentario.
Por favor, accede o regístrate para responder a esta pregunta.
En el blog
-
- 407147
- 1
- Jul 5, 2015
Sin Respuesta
-
- 169
- 0
- Mar 19
-
- 86
- 2
- Feb 26
-
- 1140
- 0
- Nov 7, 2023
-
- 302
- 0
- Sep 19, 2023
-
- 305
- 0
- Ago 21, 2023
-
- 388
- 0
- May 14, 2023
-
- 358
- 0
- Abr 21, 2023
-
- 445
- 0
- Mar 31, 2023
- ver todas
Actividad Reciente
ArtEze respondió hace 1 día
Alguien sabe, no me ignorenArtEze seleccionó una respuesta hace 1 día
Bajar extensión de Chrome sin actualizar el navega…ArtEze respondió hace 1 día
Bajar extensión de Chrome sin actualizar el navega…ArtEze preguntó hace 1 día
Bajar extensión de Chrome sin actualizar el navega…ArtEze respondió hace 1 día
No me deja instalar OracleArtEze respondió hace 1 día
Formulario que guarde los datos de un jsonArtEze comentó hace 1 día
Script /boot/ scrapingSantiago2610 comentó Mar 23
Acualizar ChoiceField en djangoSantiago2610 preguntó Mar 19
Acualizar ChoiceField en djangogonzalss preguntó Feb 26
Script /boot/ scraping
Ultimas Preguntas
Usuarios Top
- Leonardo-Tadei
- 227320 Puntos
- Peter
- 150470 Puntos
- white
- 75880 Puntos
- carlossevi
- 63580 Puntos
- magarzon
- 30650 Puntos
- pregunton
- 20400 Puntos
Todos los Usuarios Usuarios Nuevos
...