Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Capturtar por teclado una cadena de caracteres

Estas en el tema de Capturtar por teclado una cadena de caracteres en el foro de C/C++ en Foros del Web. Hola, soy nuevo en C++ y estoy dando STRINGS. Alguien puede guiarme para capturar por teclado una cadena de caracteres?. La verdad que no sé ...
  #1 (permalink)  
Antiguo 22/10/2015, 09:57
RGT
Usuario no validado
 
Fecha de Ingreso: noviembre-2008
Mensajes: 505
Antigüedad: 15 años, 5 meses
Puntos: 5
Pregunta Capturtar por teclado una cadena de caracteres

Hola, soy nuevo en C++ y estoy dando STRINGS.

Alguien puede guiarme para capturar por teclado una cadena de caracteres?.

La verdad que no sé como hacerlo, espero no se molesten.

Saludos!..
  #2 (permalink)  
Antiguo 22/10/2015, 10:02
 
Fecha de Ingreso: octubre-2014
Ubicación: Madrid
Mensajes: 1.212
Antigüedad: 9 años, 7 meses
Puntos: 204
Respuesta: Capturtar por teclado una cadena de caracteres

Código C++:
Ver original
  1. #include <iostream>
  2.  
  3. std::string nombre;
  4. std::cout << "introduce tu nombre: ";
  5. std::cin >> nombre;
  6. std::cout << "hola " << nombre << std::endl;

Eso si, has de tener en cuenta que cin va a bloquear la aplicación hasta que el usuario presione enter.

Un saludo
  #3 (permalink)  
Antiguo 22/10/2015, 10:06
RGT
Usuario no validado
 
Fecha de Ingreso: noviembre-2008
Mensajes: 505
Antigüedad: 15 años, 5 meses
Puntos: 5
Respuesta: Capturtar por teclado una cadena de caracteres

Cita:
Iniciado por eferion Ver Mensaje
Código C++:
Ver original
  1. #include <iostream>
  2.  
  3. std::string nombre;
  4. std::cout << "introduce tu nombre: ";
  5. std::cin >> nombre;
  6. std::cout << "hola " << nombre << std::endl;

Eso si, has de tener en cuenta que cin va a bloquear la aplicación hasta que el usuario presione enter.

Un saludo
Hola amigo, gracias por ayudarme.
Que pasa si hago esto:

char Cadena[10];
es obligatorio asignar el tamaño de la cadena?.
  #4 (permalink)  
Antiguo 22/10/2015, 10:38
 
Fecha de Ingreso: octubre-2014
Ubicación: Madrid
Mensajes: 1.212
Antigüedad: 9 años, 7 meses
Puntos: 204
Respuesta: Capturtar por teclado una cadena de caracteres

Cita:
Iniciado por RGT Ver Mensaje
Que pasa si hago esto:

char Cadena[10];
es obligatorio asignar el tamaño de la cadena?.
En C++ se entiende por string el uso de la clase std::string, std::wstring o cualquiera similar.

char* es un arreglo que almacena caracteres, se puede conocer como string en el entorno de C, pero no en el de C++.

Es igualmente válido char* que std::string?

En líneas generales sí. Lo que sucede es que la clase string de C++ es mucho más potente que la versión de punteros. Basta señalar, por ejemplo, que con la clase string puedes almacenar una cadena de longitud aleatoria (que viene a decir del tamaño que te de la gana), la propia clase se encarga de que haya suficiente tamaño en el buffer para que quepa lo que le intentas meter... en un arreglo de caracteres en cambio tendrás que gestionar eso a mano para evitar desbordamiento de buffer.

Además, la clase string hace gestión automática de la memoria dinámica, por lo que reducirá el riesgo de fugas de memoria.

Las interfaces de C++ que trabajen con string sabrán trabajar, en la mayoría de los casos, con arreglos de tipo char, pero en ese caso hay que estar muy seguro de lo que haces porque puedes dejar tu programa en muy mal estado si al usuario le da por meter caracteres de más.

Un saludo.

Etiquetas: cadena, caracteres, teclado
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:31.