s m что это



Setlocale 0

Автор SA-Corp. задал вопрос в разделе Другие языки и технологии

C++ русские буквы в string и setlocale. setlocale(0,""); string name; cin>>name; cout<<"Имя: "; cout< и получил лучший ответ

Ответ от Ra[гуру]
Visual C++, unicode:
#include &lt;locale&gt;
#include &lt;string&gt;
#include &lt;iostream&gt;
using namespace std;
int main() {
wcout.imbue(locale(".866"));
wcin.imbue(locale(".866"));
wcout &lt;&lt; L"Имя: ";
wstring name;
wcin &gt;&gt; name;
wcout &lt;&lt; L"Привет, " &lt;&lt; name &lt;&lt; endl;
}
Можно по всякому извращатся с WinAPI SetConsole...CP() функциями, OemToChar...(), system("chcp 1251") и т. д. Например:
#include &lt;windows.h&gt;
#include &lt;locale&gt;
#include &lt;string&gt;
#include &lt;iostream&gt;
using namespace std;
string &ru(string &s) {
for (int j = 0; j &lt; s.size(); ++j) {
char c = s[j], e;
OemToCharBuff(&c, &e, 1);
s[j] = e;
}
return s;
}
int main() {
locale::global(locale(""));
cout &lt;&lt; "Имя: ";
string name;
cin &gt;&gt; name;
cout &lt;&lt; "Привет, " &lt;&lt; ru(name) &lt;&lt; endl;
}
Вот еще рецепт:

Ответ от Зло[гуру]
ну дык что написано в коде - сохранено в кодировке текстового документа что введено с клавы - в кодировки консоли если они не совпадают - такое поведение и получишь

Ответ от 22 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: C++ русские буквы в string и setlocale. setlocale(0,""); string name; cin>>name; cout<<"Имя: "; cout<
Localeh на Википедии
Посмотрите статью на википедии про Localeh
San Andreas Multiplayer на Википедии
Посмотрите статью на википедии про San Andreas Multiplayer
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*