C++ FISZKI Polskie, niemieckie i rosyjskie znaki w konsoli - kodowanie

Witam!

 

Jako, że mam podstawy c++ postanowiłem zrobić program - fiszki, by trochę poćwiczyć i rozwinąć umiejętności programowania. :D\

 

Widzę to tak, że program będzie otwierał losowo jeden z 4 dokumentów (pol, ang, niem, ros) .txt a następnie będzie wybierał z dokumentu losowe słowo. 

Użytkownik musi wpisać pozostałe, a program oceni Dobrze/Źle i ew. poprawi. Przejście do następnego słowa po podaniu odpowiedniego znaku.

 

Chyba nie jest to bardzo skomplikowane? Niestety nie wszystko jeszcze potrafię by zrobić ten program. Póki co jestem na tym etapie: gist

Chciałem sprawdzić jak wygląda sytuacja z różnymi znakami (cyrylica, umlauty, polski). Rzecz w tym, że nie wygląda xD

 

Szukałem, wydaje mi się sporo. Wiem, że to kwestia kodowania, ale nwm jak to zrobić tak żeby w konsoli były niestandardowe znaki.

 

Proszę o pomoc :slight_smile:

Nie ma to sensu. Lepiej zapisać je w formacie CSV, np:

pol;niem;ang;ros

 

Więc tak, wybrałeś najgorszy możliwy tandem, do realizacji tego zadania. Zasięg znaków (umlałty, cyrlica, ogonki) jest na tyle rozległy, że podejrzewam najlepiej użyć byłoby UTF-8. Jak znam polskie realia, to pewno będzie standard 98 albo 03, w którym pojęcie UTF-8 nie istnieje.Do tego nakłada się archaiczny cmd (jak rozumiem rozmawiamy o windowsie).

Moja propozycja wygląda tak

  1. Zaopatrzyć się w bibliotekę, która umożliwi obsługę utf-8: http://utfcpp.sourceforge.net/

  2. Zmienić system na taki, którego konsola nie jest sprzed 20 lat (Ubuntu, Linux Mint - powinny być dobre dla laika, do celów nauki programowania wystarczą na jakimś darmowym VirtualBoxie).

Z takim tandemem, wszystko będzie działać out of box.

Jeśli jednak naciskasz na pozostanie przy programistycznej patologii: http://stackoverflow.com/a/388500 może to pomoże, ale poza samą odpowiedzią zwróć uwagę na najbardziej zalajkowany komentarz.

Jako, że to już druga taka opinia (mój kolega też powiedział że najlepszym rozwiązaniem jest linux) to chyba temat do zamknięcia. Dziękuję, zobaczę może coś się da jeszcze z windowsem zrobić D: