2 / 2 / 2
Регистрация: 10.10.2016
Сообщений: 142
1

При вводе с клавиатуры получается непонятная строка

22.11.2016, 21:20. Показов 983. Ответов 3
Метки с (Все метки)

Author24 — интернет-сервис помощи студентам
Объясните пожалуйста, почему когда строка задаю сразу в коде программа работает адекватно, а когда хочу ввести строку с клавиатуры через getline, то выводит не то что надо.
C++
1
2
3
4
5
6
7
string temp = "абвгдежз";
    string str;
    getline(cin, str);
    for (int i = 0; i<temp.length(); i++)
        if (str.find(temp[i]) != string::npos)
            cout << temp[i];
    cout << endl;
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.11.2016, 21:20
Ответы с готовыми решениями:

При вводе через getline получается пустая строка
Не могу понять, почему программа пропускает сроку ввода названия(22). Хочу, чтобы я мог вводить...

Непонятная ошибка при вводе
Дана символьная строка. Слово - последовательность символов между пробелами, не содержащая пробелы...

Составить программу, которая при вводе символа с клавиатуры выво-дит "латинская буква" при вводе латинской буквы и "не латинская бук-ва" во всех остал
Составить программу, которая при вводе символа с клавиатуры выво-дит &quot;латинская буква&quot; при вводе...

Фокусировка при вводе с клавиатуры
Ребята выручайте такая проблема. Есть WPF форма хочу сделать так, начинаю вводить с клавы он сразу...

3
Модератор
Эксперт С++
13504 / 10755 / 6410
Регистрация: 18.12.2011
Сообщений: 28,707
22.11.2016, 21:22 2
Лучший ответ Сообщение было отмечено Apollo1222 как решение

Решение

При вводе получается строка в кодовой таблице 866, надо перекодировать ее в 1251.
C++
1
2
3
4
5
6
#include <windows.h>
...
char txt[256];
cin.getline(txt,256);
OemToChar(txt,txt);
string str=txt;
0
2 / 2 / 2
Регистрация: 10.10.2016
Сообщений: 142
22.11.2016, 21:23  [ТС] 3
zss, как это сделать?
0
Модератор
Эксперт С++
13504 / 10755 / 6410
Регистрация: 18.12.2011
Сообщений: 28,707
22.11.2016, 21:26 4
Я написал, как.
1
22.11.2016, 21:26
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.11.2016, 21:26
Помогаю со студенческими работами здесь

Ошибка при вводе с клавиатуры
k=13 while True: answer=input(&quot;Введите число:&quot;) if answer==&quot;exit&quot;: break ...

Программа выдает разные результаты при присваивании значения переменной в коде и при вводе с клавиатуры
Просто вопрос. У меня программа выдает разные результаты при присваивании значения переменной в...

Не оторбажается строка с паролем, при вводе
char login, password; cout &lt;&lt; &quot;Login: &quot;; cin &gt;&gt; login; cout &lt;&lt; &quot;Password: &quot;; cin...

Вылетает командная строка при вводе
Здравствуйте, недавно решил создать батник. Я наткнулся на проблему: командная строка вылетает....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru