C++ Cadenas de entrada del usuario
Cadenas de entrada del usuario
Es posible utilizar el operador de extracción >> en cin para almacenar una cadena ingresada por un usuario:
Ejemplo
string firstName;
cout << "Escribe tu nombre: ";
cin >> firstName; // obtener la entrada del usuario desde el teclado
cout << "Su nombre es: " << firstName;
// Escribe tu nombre: John
// Su nombre es: John
Sin embargo, cin considera un espacio (espacio en blanco, tabulaciones, etc.) como carácter final, lo que significa que solo puede almacenar una sola palabra (incluso si escribe muchas palabras):
Ejemplo
string fullName;
cout << "Escribe tu nombre completo: ";
cin >> fullName;
cout << "Su nombre es: " << fullName;
// Escribe tu nombre completo: John Doe
// Su nombre es: John
Del ejemplo anterior, se esperaría que el programa imprimiera "John Doe", pero solo imprime "John".
Es por eso que, cuando trabajamos con cadenas, a menudo usamos el función getline() para leer una línea de texto. Toma cin como primer parámetro y la variable de cadena como segundo:
Ejemplo
string fullName;
cout << "Escribe tu nombre completo: ";
getline (cin, fullName);
cout << "Su nombre es: " << fullName;
// Escribe tu nombre completo: John Doe
// Su nombre es: John Doe
Ejecutar ejemplo »