10

我有以下代码:

std::stringstream ss;
ss << 1 << "a b c";
std::string result;
ss >> result;
std::cout << result << std::endl;

我看到“1a”而不是“1a b c”。

我在某处读到我应该有 ss << std::noskip。但这无济于事。

任何想法?

提前致谢。

4

2 回答 2

15
std::getline(ss, result);

或者,只是得到string

result = ss.str();
于 2013-06-05T08:31:31.367 回答
0
//Try using this for getting whitespace in string
    string input;
    cout<<"\nInput : "<<input;
    getline(cin,input);
    string result,label;
    std::stringstream sstr(input);
    while(sstr>>label){
        result=result+label+" ";
    }
cout<<"\nResult : "<<result;
于 2017-01-17T00:51:49.523 回答