sirve - getline c++
MĂșltiples entradas en una lĂnea (2)
Sí tu puedes.
Desde cplusplus.com :
Debido a que estas funciones son funciones de sobrecarga del operador, la forma habitual en que se llaman es:
strm >> variable;
Donde
strm
es el identificador de un objeto istream y lavariable
es un objeto de cualquier tipo admitido como parámetro correcto. También es posible llamar una sucesión de operaciones de extracción como:
strm >> variable1 >> variable2 >> variable3; //...
que es lo mismo que realizar extracciones sucesivas del mismo objeto
strm
.
Simplemente reemplace strm
con cin
.
No he servido de nada, y me temo que podría ser una pregunta tan simple que nadie se atreva a formularla.
¿Se puede ingresar varias cosas de la entrada estándar en una línea? Quiero decir esto:
float a, b;
char c;
// It is safe to assume a, b, c will be in float, float, char form?
cin >> a >> b >> c;
Sí, puede ingresar múltiples elementos desde cin
, usando exactamente la sintaxis que describe. El resultado es esencialmente idéntico a:
cin >> a;
cin >> b;
cin >> c;
Esto se debe a una técnica llamada "encadenamiento del operador".
Cada llamada al operator>>(istream&, T)
(donde T
es un tipo arbitrario) devuelve una referencia a su primer argumento. Entonces cin >> a
devuelve cin
, que se puede utilizar como (cin>>a)>>b
etc.
Tenga en cuenta que cada llamada al operator>>(istream&, T)
primero consume todos los caracteres de espacio en blanco, luego la cantidad de caracteres necesarios para satisfacer la operación de entrada, hasta (pero sin incluir) el primer carácter de espacio en blanco siguiente, carácter no válido o EOF .