Få konsolapplikationer att visa svenska bokstäver

C++ på riktigt Forum C++ (allmän teori) Få konsolapplikationer att visa svenska bokstäver

Etiketter: 

Visar 1 inlägg (av 1 totalt)
  • Författare
    Inlägg
  • #204
    Simon K. Jensen
    Keymaster

    De så kallade svenska specialtecknen (ä, å, ö, Ä, Å, Ö) visas i normalfallet inte korrekt i konsolfönstret som kör våra program. Förklaringen är kortfattat att fönstret inte använder rätt teckentabell. Det finns flera olika sätt att lösa detta. Nedan beskrivs de tre vanligaste tillvägagångssätten. För Windowssystem är den första metoden förmodligen den bästa. Om inte det fungerar, så testa en av de två andra metoderna.

    Första metoden: Ändra konsolfönstrets teckentabell
    Först, inkludera filen Windows.h med preprocessordirektivet #include <Windows.h>.

    Sedan, lägg in nedanstående två rader överst i main:

    SetConsoleCP(1252);
    SetConsoleOutputCP(1252);

    Andra metoden: Användning av objektet locale
    Först, inkludera filen locale med preprocessordirektivet #include <locale>.
    Sedan, lägg in nedanstående två rader överst i main:

    locale swedish("swedish");
    locale::global(swedish);

    Tredje metoden: Användning av funktionen setlocale
    Först, inkludera filen clocale med preprocessordirektivet #include <clocale>.
    Sedan, lägg in nedanstående rad överst i main:

    setlocale(LC_ALL, "sv_SE");
Visar 1 inlägg (av 1 totalt)
  • Du måste vara inloggad för att svara på detta ämne.