Estoy intentando utilizar istringstream
para dividir una cadena simple en una serie de números enteros:Separar una cadena en enteros utilizando istringstream en C++
#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;
}
}
y me sale:
* 1
* 2
* 3
* 3
¿Por qué es el último elemento siempre sale dos veces? ¿Como arreglarlo?
¿cómo podemos hacer esto en bucle for()? –
@SumitKandoi: ¿Qué quieres decir? ¿Por que lo harias? –
en realidad, lo probé en el ciclo while(). Estaba pensando que podemos hacer esto en for() loop también –