Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8362307
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 9, 20262026-06-09T11:54:37+00:00 2026-06-09T11:54:37+00:00

Possible Duplicate: C++ cin whitespace question I’m having problem trying to understand this piece

  • 0

Possible Duplicate:
C++ cin whitespace question

I’m having problem trying to understand this piece of code. I’d like to apologize if this question has already been answered but I didn’t find it anywhere. I’m a beginner and its a very basic code. The problem is >> operator stops reading when the first white space
character is encountered but why is it in this case it outputs the complete input string even if we have white spaces in our string. It outputs every word of the string in separate lines. How is it that cin>>x can take input even after the white space? Plz help me out with the functioning of this code. Thanks in advance.

#include<iostream>
#include<string>
using std::cout;
using std::cin;
using std::string;
using std::endl;
int main()
{
string s;
while (cin >> s)
cout << s << endl;
return 0;
}
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-09T11:54:38+00:00Added an answer on June 9, 2026 at 11:54 am

    The problem is >> operator stops reading when the first white space
    character is encountered but why is it in this case it outputs the
    complete input string
    even if we have white spaces in our string

    Because you’re using it in a loop. So each time around cin eats a word which you print and discards whitespace. The fact that you’re printing a newline after each word means you don’t expect to see whitespace – and in fact s contains none.

    A simple way to test this would be to print:

    cout << s << "$";
    

    However the most interesting characteristic of the code is how the while tests the istream returned by << which in a boolean context yields exactly what you want: whether the input is done or not.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Possible Duplicate: How can I understand nested ?: operators in PHP? Why does this:
Possible Duplicate: Can main function call itself in C++? I found this problem very
Possible Duplicate: class has virtual functions and accessible non-virtual destructor I got this code
Possible Duplicate: Adjusting HttpWebRequest Connection Timeout in C# In my code, I am calling
Possible Duplicate: Creating an abstract class in Objective C In Java I like to
Possible Duplicate: && operator in Javascript In the sample code of the ExtJS web
Possible Duplicate: How do I iterate over cin line by line in C++? I
Possible Duplicate: question about leading zeros As in stackoverflow.com/questions/3232534/question-about-leading-zeros . Number of trailing zeros,
Possible Duplicate: Convert std::string to const char* or char* Simple question but I'm new
Possible Duplicate: Need help with getline() In the following code, my getline is skipped

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.