Получение в переменную string текст с пробелами с++
Консольное приложение на c++, надо поместить в переменную string строку с пробелами, которую введёт пользователь. Попробовал множество методов, включая getline, всё четно, если кто знает альтернативные способы - поделитесь пожалуйста.
Код изначальный:
cout << "You choise SW-043, input your text: ";
string textUser;
cin >> textUser;
cout << encrypt_SW043(textUser);
Код с методом get:
#include <string> // объявлена в другом файле
...
cout << "You choise SW-043, input your text: ";
string textUser;
(cin >> textUser).get();
cout << encrypt_SW043(textUser);
...
Если использую этот способ, то в переменную заносится только 1-е слово, дальше после пробела он не читает.
Код с методом getline:
#include <string> // объявлена в другом файле
...
cout << "You choise SW-043, input your text: ";
string textUser;
getline(cin, textUser);
cout << encrypt_SW043(textUser);
...
Этот метод, как и дургие getline он просто игнорирует, не записывая текст в переменную.
Ответы (1 шт):
Автор решения: DerMeister
→ Ссылка
#include <iostream>
#include <string>
int main() {
std::string input;
std::cout << "Введите текст: ";
std::getline(std::cin, input); // Считывание строки с пробелами
std::cout << "Вы ввели: " << input << std::endl;
return 0;
}