Ver Mensaje Individual
  #9 (permalink)  
Antiguo 28/10/2015, 02:23
eferion
 
Fecha de Ingreso: octubre-2014
Ubicación: Madrid
Mensajes: 1.212
Antigüedad: 9 años, 6 meses
Puntos: 204
Respuesta: ¿Buffer de entrada en modo binario?

Cita:
Iniciado por jorgegl Ver Mensaje
Ese no es el problema, y de hecho para imprimir por pantalla una ñ no te hace falta ni siquiera un wide-character, y mucho menos tirar de unicode. Mira a ver si esto te funciona e imprime una "ñ" despues de "abc". Luego prueba a comentar la linea del "setlocale" y mira a ver si ya no eres capaz de imprimirla. Si es asi, prueba a meter la linea del "setlocale" en tu programa, al principio, y mira a ver si funciona.
El problema que tiene C++ es que no ha adoptado un mecanismo uniforme para gestionar strings en lenguajes diferentes al inglés. Quizás para entrada/salida funcione tu solución, pero si luego intentas manipular los caracteres para, por ejemplo, realizar transformaciones, la 'ñ', que puede perfectamente acabar ocupando 2 bytes en su codificación, te encuentras con que tienes que lidiar manualmente con estas circunstancias cuando no debería ser así.

Desde mi punto de vista cada item individual de un string debería corresponder a un carácter, independientemente de que dicho carácter ocupe 1 byte o 4 bytes, y en este punto el estándar de C++ falla irremediablemente.