- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 stringstream
将数字字符串转换为整数。我不知道为什么后面的代码不起作用。有人可以向我解释为什么我总是得到 tmp 变量的相等值吗?
#include <fstream>
#include <string>
#include <sstream>
#include <cctype>
int main() {
std::ifstream input("input.txt");
std::ofstream output("output.txt");
std::string str = "", line;
std::stringstream ss;
int tmp;
while (std::getline(input, line)) {
for (int i = 0, l = line.size(); i < l; i++) {
if (isdigit(line[i]))
str += line[i];
}
ss << str;
// gets int from stringstream
ss >> tmp;
output << str << ' ' << tmp << std::endl;
str = "";
// stringstream clearing
ss.str("");
}
return 0;
}
最佳答案
之后
ss >> tmp;
ss
在 EOF。在那之后没有任何阅读工作。您可以添加一行
ss.clear();
之后
ss.str("");
清除其内部状态。它会开始工作。我使用 if
语句来检验假设。
#include <iostream>
#include <fstream>
#include <string>
#include <sstream>
#include <cctype>
int main() {
std::ifstream input("input.txt");
std::string str = "", line;
std::stringstream ss;
int tmp;
while (std::getline(input, line)) {
for (int i = 0, l = line.size(); i < l; i++) {
if (isdigit(line[i]))
str += line[i];
}
ss << str;
// gets int from stringstream
ss >> tmp;
std::cout << str << ' ' << tmp << std::endl;
str = "";
// stringstream clearing
if (ss.eof())
{
std::cout << "ss is at eof\n";
}
ss.str("");
ss.clear();
}
return 0;
}
关于c++ - Stringstream清零麻烦,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28420228/
这个问题在这里已经有了答案: Mute specified sections of an audio file using ffmpeg (3 个回答) 6年前关闭。 我想使用一些命令行工具(ffmp
我想使用 STL 容器(加上 std::basic_string)在内存中临时存储 key 或密码,完成后我想将内存归零。 我最初计划使用在自定义分配器上参数化的 STL 容器,该分配器将 alloc
我正在使用Windows credentials store像这样: PCREDENTIAL cred = nullptr; if (CredRead(entryName, 1, 0, &cred)
我正在开发一个 LKM,并且在分配它之后将一个 8192 字节的 vmalloc 区域归零。我知道我可以使用 vzalloc(),但它让我感到困惑,为什么我这样做: pmem = vmalloc(81
试试nodejs几天吧。我应该在 fs.readFile() 之后以某种方式关闭文件吗?如果是的话怎么办?为了更好的性能和内存安全,我应该使用 null 还是使用一些不必要的变量? 谢谢。 最佳答案
我读过一些关于 V8 隐藏类的文章。不过,我脑子里还有几个问题: 假设有两个对象: var a = { } a.x = 5 a.y = 6 var b = { } b.y = 7 b.x = 8 他们
我想将系统范围内的标准 malloc(通过 LD_PRELOAD 或仅替换已安装的 libc)替换为一个将已释放 block 中所有可能的内容清零的 malloc。有谁知道现有的解决方案? 在堆的未使
我是一名优秀的程序员,十分优秀!