[C con Clase] distinto juego de caracteres

Salvador Pozo salvador en conclase.net
Lun Sep 17 16:27:02 CEST 2012


Hola:

Bueno, he compilado el nuevo código que envías, y me ha pasado una cosa curiosa.

Antes de nada, la función SetConsoleOutputCP te dará un error si usas un código de página que no esté registrado.

Puedes usar el programa "regedit.exe" para ver el registro (sólo para verlo, no es buena idea modificarlo), y ver qué códigos de página están disponibles en tu ordenador.

En mi caso hay unos cuantos. Por lo que puedo deducir, hay dos valores interesantes:

ACP, que debe ser el código de página por defecto para Windows GUI, que en mi caso vale 1252.
OEMCP, que supongo que es el código de página por defecto para la consola, que es 850.

En tu ejemplo, tal como está, se produce un error porque intentamos cargar el código de página 1520 (no el 1250), que no está registrado (al menos en mi ordenador).

No quisiera parecer pesado, pero asegúrate de que intentas activar el código de página correcto.

Por cierto, la "cosa curiosa" que me ha pasado es que he cortado y pegado el código desde tu mensaje, usando el formato del foro. En la página uso la codificación UTF-8, y al pegar el código en en editor de Code::Blocks ha mantenido la codificación, por lo que, a pesar de activar correctamente el código de página, el texto mostrado no tenía nada que ver con el que aparece en el programa.

Esto lo digo sólo como curiosidad, por si a alguien le pasa lo mismo intentando ver cómo funcionan estos programas.

Imagino que si se activan los WCHAR para el proyecto esto no pasará, pero no lo he verificado.

Hasta pronto.

-- 
Salvador Pozo (Administrador)
mailto:salvador en conclase.net


Más información sobre la lista de distribución Cconclase