JNe*_*ens 16 c++ string stringstream
我正在尝试编写一个函数,它将检测我几乎在字符串流的末尾,但它似乎不起作用.
这是一些代码:
std::string path(1.2.3);
int number;
std::stringstream ss(path);
while (!ss.eof()) {
if (ss.peek() != '.') {
ss >> number;
if (ss.tellg() == path.length()) {
std::cout << "Last one: " << number;
} else {
std::cout << number;
}
} else { ss.get(); }
}
Run Code Online (Sandbox Code Playgroud)
我尝试使用ss.tellg()== path.length(),但这不起作用.有人有替代方案吗?
JNe*_*ens 15
我想到了..
std::string path(1.2.3);
int number;
std::stringstream ss(path);
while (!ss.eof()) {
if (ss.peek() != '.') {
ss >> number;
if (ss.tellg() == -1) {
std::cout << "Last one: " << number;
} else {
std::cout << number;
}
} else { ss.get(); }
}
Run Code Online (Sandbox Code Playgroud)