[C con Clase] Error al mostrar caracter no ASCII
Ángel
isalorenz en telefonica.net
Dom Mayo 17 21:27:22 CEST 2009
Hola a todos, hace poco he topado con cierto misterio al que no consigo
encontrar una explicación, se trata de una inquietud puramente intelectual,
nada importante, así que si tenéis tiempo y alguna explicación... pues
agradecido.
En C++, cuando intento mostrar en consola un carácter fuera del Standard
ASCII, por ejemplo 'ñ' la salida es bastante inesperada:
char c;
int i;
c = 'ñ'; // 'ñ' tiene, debería tener el código 164
i = c;
std::cout << c << std::endl;//muestra el caracter '+-'
std::cout << i << std::endl;//correspondiente al código -15 equivalente a
241
Sin embargo si:
i = 164;
c = i;
std::cout << c << std::endl;//muestra el caracter 'ñ'
std::cout << i << std::endl;//correspondiente al código 164
¿Alguna idea de por qué no funciona en el primer caso?
Más información sobre la lista de distribución Cconclase