Programación General > C/C++

 entrada en consola de caracteres con tilde

(1/1)

picyo:
Hola, he visto cómo puedo ver caracteres con tilde ( por ejemplo "ú") para interpretarlos en consola. Como por ejemplo :


--- Código: C++ ---std::locale::global(std::locale("spanish"));printf("En un rincón se vió..."); 
también se puede hacer con la entrada de 2 caracteres en un string (´+letra) y decir, si hay 'ú' escribe    :

--- Código: C++ ---cout<<"243"<<endl; 
La primera de todas me ha gustado cerla, ya que para cadenas de caracteres "establecidos" no hay que ir a ninguna tabla. Pero la entrada por usuario me está siendo un problema, ninguna de estas dos soluciones me sirve.

1) Uso esta funcion
--- Código: C++ ---TeclaPulsada=Console::ReadKey(true);  y en cuanto pulso cualquier tecla ( primero la de acento, claro) ya no me deja pulsar una siguiente.
2) Así que decido volver a usar cin>>. Para ello, veo que como usuario si puedo introducir la letra "ú", pero al hacer cout<< me sale el símbolo de la libra

¿ Cómo puedo solucionar este problema ? Es decir, permitir al usuario escribir una tilde en una letra como entrada

picyo:
bueno veo que con
# std::locale::global(std::locale("spanish"));
la verdad no hay  probolema con cin>> y cout<<, pero ahora me viene la duda ( de echo lo que quiero es esto) quiero "obligarme" a usar el tipo wchar o similar, y no el char. Que tiene de "especial pues ?" Se que es para uso de unicoide, que es lo que quiero ( es ISO estandar ademas el unicoide )..es quizas que al poner  # std::locale::global(std::locale("spanish")); "estandariza" los caracteres españoles ( o la lengua de uso ) ? Es decir, si no usase eso, deberia usar como tipo el wchar ( o wchar_t??), entonces si, estoy " de vuelta" con la pregunta que he realizado antes.

Navegación

[0] Índice de Mensajes

Ir a la versión completa