Я пытаюсь использовать istringstream
, чтобы разбить простую строку на серию целых чисел:
#include <string>
#include <iostream>
#include <sstream>
#include <vector>
using namespace std;
int main(){
string s = "1 2 3";
istringstream iss(s);
while (iss)
{
int n;
iss >> n;
cout << "* " << n << endl;
}
}
И я получаю:
* 1
* 2
* 3
* 3
Почему последний элемент всегда выходит дважды? Как это исправить?