{RESUELTO} ¿Cómo leer letra 'ñ' con TurboC 4.5?

Iniciado por |Miguel|, 28 Mayo 2011, 16:07 PM

0 Miembros y 1 Visitante están viendo este tema.

|Miguel|

Hola a todos.

Pues eso básicamente... que llevo un par de días con eso y no consigo hacerlo... tengo un bucle while que sirve para comprobar que lo que se ha tecleado es una letra, y solo eso, y no consigo hacer que reconozca la letra ñ...

Tengo este código:

printf("\n\nIntroduzca una letra: ");
respuesta=tolower(getche());
fflush(stdin);
while( (respuesta<97) || (respuesta>122) || respuesta!='ñ')
{
printf("\nCaracter incorrecto, introduzca una letra por favor. ");
respuesta=tolower(getche());
}

También he probado con:
while( (respuesta<97) || (respuesta>122) || respuesta!=164)
E incluso con:
while( (respuesta<97) || (respuesta>122) || respuesta!=-15)
**   -15 porque por probar hice una variable tipo char que valía 'ñ' y al imprimir su código ascii me salía un -15, cosa que no me cuadra....
A ver si alguien sabe que puedo hacer..

Gracias!!

|Miguel|

#1
RESUELTO:

while( (respuesta!=-15) && (respuesta<97) || (respuesta>122) )

Vaya tontería más grande... no entiendo porqué así sí funciona y poniendo el -15 al final no... en fin, gracias a todos!

BlackZeroX

y si le haces un casting?

(int)

Dulces Lunas!¡.
The Dark Shadow is my passion.

|Miguel|

Cita de: BlackZeroX▓▓▒▒░░ en  1 Junio 2011, 09:52 AM
y si le haces un casting?
No sé lo que es... ¿Te refieres a conversión de tipos? Si es así, en teoría no debería hacer falta ya q C trata a las variables char  como int, ¿o me equivoco?