【问题标题】:how to clear the content in the String stream.? [duplicate]如何清除字符串流中的内容。? [复制]
【发布时间】:2011-10-19 20:21:45
【问题描述】:

谁能告诉我如何清除字符串流的内容..? 我尝试了以下方法,但没有成功。

stringstream ss;
ss<<"bala"<<"murugan";
cout<<ss.str();         //Output balamurugan
ss.str().clear();
ss<<" hi";
cout<<ss.str();
// output is balamurugan hi 

我需要的输出是“hi”单独.. 请告诉我

【问题讨论】:

    标签: c++ string stream inputstream stringstream


    【解决方案1】:

    您正在做的是从字符串流中清除 返回 的字符串,而不是 internal 字符串。您必须实际执行ss.str("")

    请看这里: How do you clear a stringstream variable?

    【讨论】:

      【解决方案2】:

      “clear()”成员函数继承自ios,用于清除流的错误状态。

      要清除字符串流的内容,使用:

      stringstreamObject.str("");
      

      【讨论】:

      • 在 OP 使用的情况下,clear() 用于字符串,而不是流...
      【解决方案3】:

      这样做:

      ss.str("");
      

      这会使流为空!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-09-06
        • 1970-01-01
        • 2018-12-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-06-05
        相关资源
        最近更新 更多