...

/

Read Strings from User Input

Read Strings from User Input

Learn to read strings from user input.

We'll cover the following...

The STL provides character-based input from the standard input stream using the std::cin object. The cin object is a global singletonGlobal singleton refers to a design pattern where only one instance of a class is globally accessible throughout the entire program execution. 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:

./main
Enter words: big light in sky
[big] [light] [in] [sky]

Note: 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 ...