[C con Clase] distinto juego de caracteres

Salvador Pozo salvador en conclase.net
Lun Sep 17 12:13:23 CEST 2012


El pasado 2012-09-16 17:39:32, jiptohej escribió:
 
j> Hola a Todos:
j> Estoy utilizando el Dev-C en XP, W7 y Ubuntu. En los equipos windows
j> me encuentro con el siguiente problema:
j> "El juego de caracteres utilizado por el compilador y el editor es
j> diferente que el juego de caracteres utilizados por el intérprete de
j> windows cmd"

Hola:

Recientemente encontré un modo de hacer esto, usando el API de Windows. Llevaba tiempo intentando conseguirlo, sin éxito.

No hay soluciones elegantes ni portables, lo cual es bastante frustrante, pero esta funciona, y sólo requiere un par de líneas de código.

Se trata de la función SetConsoleOutputCP, de la que puedes ver la documentación en nuestra página:

http://winapi.conclase.net/curso/?winfun=SetConsoleOutputCP#inicio

Para usarla necesitarás incluir el fichero de cabecera "wincon.h":

----8<------
#include <wincon.h>

int main() {
    // Activar el código de página "latín", para que se 
    // muestren correctamente acentos, la letra ñ, etc:
    SetConsoleOutputCP(1252);
...

    return 0;
}
----8<------

Por supuesto, puedes usar el código de página que prefieras, en este ejemplo he usado el 1252.

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


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