Пишу лабораторную. Возникла проблема, что при выводе в консоль записи "Enter a string:", она выводилась ещё один раз на этой же строке. Подскажите, в чём проблема и как это пофиксить? Код:
#include <iostream>
#include <string>
#include <Windows.h>
#include <vector>
using namespace std;
int main()
{
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
int n;
cout << "Enter N number: "; // Вводим кол-во строк
cin >> n;
vector <string> v; // Инициализируем строковый вектор
for (int i = 0; i < n + 1; i++)
{
string str; // Объявляем строку
cout << "Enter string: "; // Вводим строку
getline(cin, str); // Записываем строку
string new_s; // Объявляем новую строку
for (int j = 0; j < str.length(); j++)
{
if (str[j] != ' ') // Если str[j] не пробел (т.к. пробел - это пробел), то
{
new_s += char(int(str[j] + 1));
}
else // Если str[j] - пробел, то просто добавляем пробел
{
new_s += ' ';
}
}
v.push_back(new_s); // Расшифрованную строку в массив
}
int v_len = v.size(); // Узнаём размер массива
for (int i = 0; i < v_len; i++)
{
cout << v[i] << endl; // Выводим расшифрованные строки
}
}
Output:
Enter N number: 2
Enter string: Enter string: love cats
Enter string: love cats
mpwf dbut
mpwf dbut
>>собираетесь считыватьlove cats? – Mikhajlo Oct 16 '22 at 13:58cin.sync (); – Виктор Oct 16 '22 at 14:28