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

Problema con leyendo cadena

Estas en el tema de Problema con leyendo cadena en el foro de C/C++ en Foros del Web. Que tal !!! Estoy ayudando a mi novia a realizar un trabajo en c++, ahora usan un IDE llamado Zinjai el cual nunca habia visto ...
  #1 (permalink)  
Antiguo 03/06/2011, 20:42
Avatar de juamd  
Fecha de Ingreso: marzo-2009
Ubicación: Bogotá
Mensajes: 285
Antigüedad: 15 años, 1 mes
Puntos: 8
Problema con leyendo cadena

Que tal !!!

Estoy ayudando a mi novia a realizar un trabajo en c++, ahora usan un IDE llamado Zinjai el cual nunca habia visto y se me presenta el siguiente problema:

Se debe leer una cadena compuesta de varios espacios el problema es que solo leer hasta el primer espacio, si intentamos mostrar lo que ha leido despues del primer espacio muestra solo basura.

A que se debe esto ?


Saludos.
__________________
Dejenme saber cuando estoy equivocado y cuando estoy en lo cierto dejenme saber si existe una solución mejor.
  #2 (permalink)  
Antiguo 04/06/2011, 06:28
 
Fecha de Ingreso: abril-2010
Ubicación: Rosario
Mensajes: 1.850
Antigüedad: 14 años
Puntos: 228
Respuesta: Problema con leyendo cadena

Se debe a qeu si estas usando cin o scanf estos suelen leer hasta el primer espacio, o fin de linea. Lo que tienes que hacer es capturar la linea entera con gets cin.getline.

Saludos
  #3 (permalink)  
Antiguo 05/06/2011, 15:11
 
Fecha de Ingreso: abril-2011
Ubicación: Guadalajara, Jalisco, Mexico
Mensajes: 27
Antigüedad: 13 años
Puntos: 4
Respuesta: Problema con leyendo cadena

creo que esto es un poco mas especifico...
Código C++:
Ver original
  1. int main()
  2. {
  3.     char cadena[30];
  4.    
  5.     cout<<"Introduce la cadena: ";
  6.     cin.getline(cadena,30);
  7.    
  8.     cout<<"La cadena completa es: "<<cadena;
  9.    
  10.     cin.get();
  11.     cin.get();
  12.     return 0;
  13. }

Etiquetas: leyendo, cadenas
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 22:05.