Почему когда я ввожу string с пробелами в cin, то мне выводит только одно слово

У меня есть проблема в C++, когда я пишу два слова, например, "hello world" в cin, то когда оно выводит "hello world", там только "hello".

#include <iostream>
#include <string>
int main() {
    setlocale(LC_ALL, "RU");
    std::string text;
    std::cout << "что вывести на экран?";
    std::cin >> text;
    std::cout << text;
    return 0;
}

Ответы (1 шт):

Автор решения: Danila Kartovitskii

Оператор cin >> text; считывает только одно слово до пробела или символа новой строки. Таким образом, если вы вводите "Hello world", cin считывает только "Hello" и прекращает считывание при обнаружении пробела.

Вы можете использовать функцию getline() для считывания всей строки целиком:

getline(cin, text);
→ Ссылка