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 »