【发布时间】:2021-12-30 23:38:45
【问题描述】:
例如,如果我写:
cout << "Привет!" << endl; //it's hello in Russian
在控制台中类似于╧ЁштхЄ!。
好的,我知道我们可以使用:
setlocale(LC_ALL, "Russian");
但在那之后,俄语中的命令行参数不起作用(如果我通过 BAT 文件启动我的程序):
StartProgram.bat
chcp 1251
MyProgram.exe -user=Олег -password=Пароль
所以,在setlocale 之后,程序无法正确读取俄语参数。
这是因为 BAT 文件在 CP1251 中,但控制台在 CP866 中。
那么,有一个问题:
如何在 C++ 控制台中编写俄语文本,同时正确读取俄语命令行参数。
【问题讨论】:
标签: c++ encoding character-encoding