stringstream不接受空格?

时间:2013-06-05 08:29:24

标签: c++ g++

我有以下代码:

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

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

我读到某个地方我应该有ss&lt;&lt;的std :: NOSKIP。但它没有帮助。

有什么想法吗?

提前致谢。

2 个答案:

答案 0 :(得分:10)

std::getline(ss, result);

或者,只需获取string

result = ss.str();

答案 1 :(得分:-1)

//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;