getchar() en linux

Cuestiones y dudas acerca de lenguajes de programación diversos.

Moderador: Moderadores

Avatar de Usuario
eup_pringaos

getchar() en linux

Mensaje por eup_pringaos » Mar Feb 17, 2004 8:23 pm

Hola,

En fin... Una preguntilla...

¿Cómo prodría hacer para que getchar() devuelva caracter sin necesidad de hacer un intro o un flush?

Ermfff... cualquier ayuda que funcione es estimable.

Gracias de antemano,


Eup_pringaos

Avatar de Usuario
Zenko

Solucion

Mensaje por Zenko » Mié Feb 18, 2004 10:21 pm

char car;
while ((car=getchar())!='\n')
{
hacer_algo (car);
}
/*bueno es para que te hagas una idea puedes ir copiando el car a un array de char etc etc*/

eup_fracasados
Novat@
Mensajes: 1
Registrado: Mar Feb 17, 2004 8:20 pm

Re: Solucion

Mensaje por eup_fracasados » Jue Feb 19, 2004 1:09 pm

hola,

El problema no es ese... si no que el programa no 'hará nada' hasta que el sistema operativo no libere el buffer de stdin con un retorno de carro (hablamos de linux).

El problema viene de que es para una practica de telefonía ip y que cada dígito marcado tiene que ser envíado en tiempo real al servidor. No nos sirve tener que esperar a un '\n' porque si no, el servidor no funciona com o un telefono 'normal'.

¿A alguien se le ocurre cómo solucionar ésto?

Saludos.
Zenko escribió:char car;
while ((car=getchar())!='\n')
{
hacer_algo (car);
}
/*bueno es para que te hagas una idea puedes ir copiando el car a un array de char etc etc*/

Responder