Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Polskie znaki diakrytyczne


Rekomendowane odpowiedzi

Opublikowano

Witam, podczas uruchamiania tej funkcji zamian polskich znaków wyskakują mi dziwne kształty. Sprawdzałem plik *.txt jest z nim wszystko dobrze. W main dodałem

"setlocale( LC_ALL, "" );"

 

 

void wyswietl_test()
{
    string zmienna;

    ifstream plik_odczyt;
    plik_odczyt.open( "test.txt" );

    cout << "Po kazdym wyswietleniu pytania nacisnij dowolny przycisk aby kontynuować." << endl << endl;

    while( !plik_odczyt.eof() )
    {
        for( int i = 0; i < 4; i++ )
        {
            getline( plik_odczyt, zmienna );
            cout <<  zmienna << endl;
        }

        if( plik_odczyt.eof() )
            break;

        getch();
    }

    plik_odczyt.close();

    cout << endl << "Naciśnij klawisz aby kontynuować." << endl;
    getch();
}

 

 

Tekstu z trzeciej linijki też nie wyświetla poprawnie. Czy macie jakieś sugestie albo widzicie błąd;

Opublikowano

Nigdy nie bawilem sie w polskie znaki. Jedyne co moge powiedziec na pewno, to że tekst w cudzyslowie "abc" jest typu const char*, czyli max 256 roznych znakow (zobacz ASCII table). Ten typ nie obejmuje jakichkolwiek znakow specjalnych. za to L"abc" ( zauwaz L przed cudzyslowiem ) pododuje ze tekst jest typu wchar_t* (wskaznik na wide char), gdzie kazda litera znajduje sie na 2 bajtach, czyli masz 65536 mozliwosci dla pojdeynczego znaku

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...