Zum Beispiel zu schreiben, wenn ich schreibe:Wie kyrillischen Text in C++ Konsole
cout << "Привет!" << endl; //it's hello in Russian
in der Konsole wäre es so etwas wie ╧ЁштхЄ!
sein.
OK, ich weiß, dass wir verwenden können:
setlocale(LC_ALL, "Russian");
Aber danach, Befehlszeilenargumente in Russisch funktionieren nicht (wenn ich mein Programm durch eine BAT-Datei starten):
Starte .bat
chcp 1251
MyProgram.exe -user=Олег -password=Пароль
So, nach setlocale
kann das Programm nicht russische Argumente richtig lesen.
Dies passiert, weil die BAT-Datei in CP1251, aber die Konsole ist in CP866.
So gibt es eine Frage:
Wie kann ich russischen Text in der C++ Konsole schreiben und gleichzeitig haben russische Kommandozeilenargumente richtig lesen.
Dank, es funktioniert! Aber auf diese Weise kann ich nicht cout verwenden, nur wprintf – VextoR
'wcout' ist das Äquivalent von' wprintf' genauso wie 'cout' ist das Äquivalent von' printf' - die letzten beiden werden nicht Unicode. – MSalters