gpt4 book ai didi

c++ - Stringstream 提取整数

转载 作者:可可西里 更新时间:2023-11-01 17:00:35 25 4
gpt4 key购买 nike

为什么我无法将整数值提取到 Num 变量中?

#include <sstream>
#include <vector>
#include <iostream>

using namespace std;

int main()
{
string Digits("1 2 3");
stringstream ss(Digits);
string Temp;
vector<string>Tokens;

while(ss >> Temp)
Tokens.push_back(Temp);

ss.str(Tokens[0]);

int Num = 0;
ss >> Num;
cout << Num; //output: 0
}

最佳答案

当流提取 3 个数字“1 2 3”中的最后一个时,将设置 eof 状态。这个不是str()成员清除的,需要自己清除。将您的代码更改为:

ss.clear();
ss.str(Tokens[0]);

关于c++ - Stringstream 提取整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/541022/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com