Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/11/2008, 10:06
Avatar de calathea
calathea
 
Fecha de Ingreso: octubre-2008
Ubicación: Valladolid
Mensajes: 122
Antigüedad: 16 años, 5 meses
Puntos: 3
kbhit, cscanf y getch

Hola! Tengo un problema con estas tres funciones: kbhit(), cscanf() y getch()

He probado a introducir las dos últimas en una parte de un programa en la que quiero hacer lo siguiente:

Tengo declarado un ID como unsigned short int, entonces, quiero leerlo una vez se introduzca por teclado, pero si en vez de introducir el numero del ID se introduce un salto de linea, quiero que me reconozca eso para poder poner en funcionamiento una funcion "casera".

Este es el trozo de código al que hago referencia:

Código:
printf("Seleccione codigo de la parada \na modificar (pulse <RETURN> para cancelar): ");
	fflush(stdin);  _cscanf("%d", &cadena);	_getch(cad);
	// compruebo si la cadena contiene algun codigo
	
	cancelar(cad);
Y esta es la funcion casera cancelar();

Código:
void cancelar(char cad)
{
	char introducido='\n';
	
	if(cad==introducido)
	{
		printf("Modificacion cancelada\n");
		Pausa();
		return;
	}
}
Y no consigo que me funcione...

Y la función kbhit(), exactamente cómo funciona?? simplemente detecta si has pulsado una tecla...o te detecta si has pulsado una determinada tecla antes indicada???

Gracias de antemano!!