Ascii problem with russia (c++)

297
11 октября 2017, 08:23

Всем привет, помогите пожалуйста с ascii. Суть программы: шифрование и дешифрование сообщений. Если вводить текст на англ языке то все хорошо но вот когда доходит до русского то что-то непонятное происходит. Например я вводил "п" а выдавало что-то непонятное на подобие i (только точки с двух сторон были) потом я попробовал делать тоже самое но с использованием "bitset" не помогло. Потом решил опять попробовать переподключить setlocale в разных вариациях и все заработало... дабы узнать в чем проблема начал возвращать код в исходное состояние (где работал только через char (как код внизу)) но по итогу теперь все работает... но я так и не понял почему... п.с приложение (тот код что снизу) консольное а основное в winforms и там не работает =\ я пробовал делать все тоже самое что и делал в консольном но увы... пробовал дебажить... букву "п" видит как (1087) потом уменьшаю это значение на 13 (дабы зашифровать) и получаем 1074 что равно "2"... Начинаю расшифровывать значение "2" приравниваю его к char и получаю 50... увеличиваем 50 на 13 дабы расшифровать и получаем "?". С англ все хорошо и все работает...

while (int i = 0 < 10) {
    unsigned char c;
    int ascii;
    cout << "ascii symbol: ";
    cin >> c;
    cout << "ASCII-number: " << (int)c << endl;
    cout << "set ASCII-number of symbol: ";
    cin >> ascii;
    cout << "symbol: " << (char)ascii << endl;
}
return 0;
READ ALSO
Проблема со сравнением char в С++ [требует правки]

Проблема со сравнением char в С++ [требует правки]

Трабла в том, что ругается на (path[i] == '\')Как это провернуть?Спасибо) Вот сам код:

186
Считать 2 последние буквы строки [требует правки]

Считать 2 последние буквы строки [требует правки]

Необходимо считать в отдельную переменную 2 последние буквы строки

160
Autocomplete передача значения из select в массив

Autocomplete передача значения из select в массив

Задача: выбрать кол-во инпутов/авторов, вывести их на экран, в каждом должен работать autocomplete по ФИО юзеровПосле выбора предложенного значения...

260