Русские символы в С++

191
01 июля 2018, 09:00

Помогите, пожалуйста, написал код на С++, чтобы когда вводишь какое-либо слово определенные символы менялись на другие, например: Ввел "Hello" вывелось "Hezzo", все прекрасно работает, но если ввести русские символы то не работает, а также символы типа: ξ Ē ∑, тоже некорректно отображаются. (setlocale не помогает) Помогите, пожалуйста, хотя бы просто русские буквы присвоить. Заранее спасибо.

#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;
int main()
{
setlocale(LC_ALL, "ru");
cout << "Hello" << endl;
string s, s1;
cin >> s;
for (const auto& c : s) {
    if (c != 'l') {
        s1 += c;
    }
    else {
        s1 += 'z';
    }
}
cout << s1 << endl;
system("pause");
return 0;
}
Answer 1

Тип данных используй WideString для UNICODE текста

Answer 2
SetConsoleCP(1251);
SetConsoleOutputCP(1251);

прописываешь в начале main

Answer 3

Можно также

system("chcp 1251>nul");
READ ALSO
класс set с++ не могу понять функцию count();

класс set с++ не могу понять функцию count();

Ищет в контейнере элементы, эквивалентные val, и возвращает количество совпадений

206
Удаление вершины с графа

Удаление вершины с графа

Как реализовать правильно функцию удаления вершины? Если возможно помогите кодом

184
Неявное подключение DLL С++ WINAPI

Неявное подключение DLL С++ WINAPI

Пару часов назад писал с вопросом о явном подключении и с горем пополам разобрался, спасибо всем, кто помогСейчас встал вопрос о неявном подключении...

186
С++ Мультисет Итератор

С++ Мультисет Итератор

Нужно вывести первые 3 элемента, но согласно моей лямбда-сортировке

549