#include <locale.h>
int main()
{
setlocale(LC_ALL, "rus");
// TODO:
return 0;
}
Другие языки программирования и технологии
Как в C++ Писать русскими буквами в операторах вывода? Какую библиотеку подключить?
Кроссплатформенного способа фактически нет. Стандартом C++ описан залоловочный файл <locale> и, соответственно, класс std::locale
#include <locale>
using namespace std;
void main()
{
locale loc("rus");
cout.imbue(loc);
cout << "Превед" << endl;
}
Однако реализаций, поддерживающих локаль "rus" - единицы, а там, где она поддерживается, сам компилятор при парсинге использует другую кодировку, отличную от применяемой в консоли. например,
locale loc("rus");
cin.imbue(loc);
string expected = "Привет";
string actual;
cin >> actual; // вводим в консоль "Превед"
assert(actual == expected);
легко может не пройти: скомпилированное "Превед" в одной кодировке, а прочитанное - в другой. Приём такой вот маразм распространяется даже на Unicode и UTF-8 (хотя единокод в C++ -это ещё большее горюшко-пичаль, чем русский язык, так что тут вообще получается говно в квадрате на выходе) .
В итоге конкретное решение зависит от конкретного компилятора и OC, так что гуглите.
В VC++, например, для того, чтобы кириллица выводилась правильно и введённые строки соответствовали скомпилированным, помогает Unicode (wstring, wcin, wcout) + локаль ".866"
#include <locale>
using namespace std;
void main()
{
locale loc("rus");
cout.imbue(loc);
cout << "Превед" << endl;
}
Однако реализаций, поддерживающих локаль "rus" - единицы, а там, где она поддерживается, сам компилятор при парсинге использует другую кодировку, отличную от применяемой в консоли. например,
locale loc("rus");
cin.imbue(loc);
string expected = "Привет";
string actual;
cin >> actual; // вводим в консоль "Превед"
assert(actual == expected);
легко может не пройти: скомпилированное "Превед" в одной кодировке, а прочитанное - в другой. Приём такой вот маразм распространяется даже на Unicode и UTF-8 (хотя единокод в C++ -это ещё большее горюшко-пичаль, чем русский язык, так что тут вообще получается говно в квадрате на выходе) .
В итоге конкретное решение зависит от конкретного компилятора и OC, так что гуглите.
В VC++, например, для того, чтобы кириллица выводилась правильно и введённые строки соответствовали скомпилированным, помогает Unicode (wstring, wcin, wcout) + локаль ".866"
1. CharToOem
2. Использовать wprintf, wcout и unicode
Про все это можно подробно почитать в гугле.
2. Использовать wprintf, wcout и unicode
Про все это можно подробно почитать в гугле.
Выбери другую IDE, видимо у тебя совсем древняя.
И не ломай глаза учителю "Vvedite 4islo"
И не ломай глаза учителю "Vvedite 4islo"
Если мы будем использовать функцию setlocale() внутри функции main()
#include
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
cout << "Русский текст" << endl;
return 0;
}
То получим вместо иероглифов нормальный русский шрифт.
#include
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
cout << "Русский текст" << endl;
return 0;
}
То получим вместо иероглифов нормальный русский шрифт.
как успехи?)) 6 лет прошло
setlocale(LC_ALL, "Russian");
Похожие вопросы
- Pelles c: какую библиотеку подключить, чтобы текст выводился кириллицей?
- дана строка содержащая латинские буквы, русские буквы и цифры. Подсчитать количество русских букв и цифр в данной строке
- Господа програмисты, пишите ли вы после оператора выбора if альтернативу else и пустой оператор{}?
- Решил изучать c/c++, скачал eclipse CDT, пару часов повоевал с библиотеками, победил, но теперь тупо не могу запустить!
- MySQL русские буквы не работают
- Как отдельно подсчитать количество русских букв и английских букв в строке массива???
- 1. как в строке выбрать все русские буквы по одному разу? 2.как заполнить массив по правилу латинского квадрата?
- Бесит просто,когда пишут англ. буквами русские слова. Кто -нибкдь меня поддержит?
- где найти такой фотошоп чтобы писать красибо русскими буквами на картинках?
- Try{ }catch c++ Можете по-простому объяснить операторы try,catch? Cпасибо