如何使用 stringstream 在循环中追加?例如[关闭]

Posted

技术标签:

【中文标题】如何使用 stringstream 在循环中追加?例如[关闭]【英文标题】:How to use stringstream to append in a loop? For example [closed] 【发布时间】:2019-05-17 19:21:52 【问题描述】:

我正在尝试使用 ostringstream 在循环中连接字符串。不幸的是,只使用最新的流。谁能指出我完成这个或类似的正确方向(其他 + 与字符串连接)?

谢谢

std:ostringstream os;
for (int i = stk.pop(); i != 0; i = stk.pop()) 
    os << i << endl;

cout os.str();

所以'os'的值每次都会被覆盖?有没有办法追加到流中?

解决方案 这段代码有效,我有一个错误。

谢谢

【问题讨论】:

什么是stk?除了最后一行缺少&lt;&lt;,这段代码看起来是正确的。 嗨,最后一行应该是cout &lt;&lt; os.str(); 需要reprex。 @Philipp 不需要它。 cout os.str(); ... 缺少&lt;&lt; 【参考方案1】:

该代码不应覆盖os。它应该使用&lt;&lt; 运算符附加到它上面。也许您的错误在其他地方?也许你的堆栈真的只有最后一个元素?

【讨论】:

这是一个不错的评论,但由于问题中提供的信息非常有限,因此无法回答隐含的问题,“为什么 我的代码不起作用? " 点了。我们得看看——也许我会很幸运,猜到他的虫子。 ;-)

以上是关于如何使用 stringstream 在循环中追加?例如[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

std::string 追加太慢?

如何在python中使用for循环进行追加工作

php如何循环追加到变量

如何使用追加停止 JavaScript for 循环

如何追加选择内部循环

如何使用 stringstream 在 C++ 中将字符串转换为双精度值 [关闭]