¿Cómo leer los números separados por espacios de la consola?
Estoy tratando de hacer una tarea simple de leer números separados por espacios desde la consola a unavector<int>
, pero no entiendo cómo hacer esto correctamente.
Esto es lo que he hecho hasta ahora:
int n = 0;
vector<int> steps;
while(cin>>n)
{
steps.push_back(n);
}
Sin embargo, esto requiere que el usuario presione un carácter no válido (comoa
) para romper elwhile
lazo. No lo quiero.
Tan pronto como el usuario ingrese números como0 2 3 4 5
y presionaEnter
Quiero que se rompa el bucle. Intenté usaristream_iterator
ycin.getline
también, pero no pude hacerlo funcionar.
No sé cuántos elementos ingresará el usuario, por lo tanto, estoy usandovector
.
Por favor, sugiera la forma correcta de hacer esto.