Read strings from user input
The STL provides character-based input from the standard input stream using the std::cin object. The cin object is a global singleton that reads input from the console as an istream input stream.
By default, cin reads one word at a time until it reaches the end of the stream:
string word{};
cout << "Enter words: ";
while(cin >> word) {
    cout << format("[{}] ", word);
}
cout << '\n';
Output:
$ ./working Enter words: big light in sky[big] [light] [in] [sky]
This is of limited usefulness, and it may lead some to dismiss cin as minimally functional.
While cin certainly has its quirks, it can be easily wrangled into providing line-oriented input.
How to do it…
To get basic line-oriented functionality from cin, there are two significant behaviors that need to be understood. One is the ability to get a line at a time, instead of a word at a time. The other...
[big] [light] [in] [sky]