[C con Clase] [Bulk] Re: Duda con "cin"

Omar Murray omurray en gmail.com
Mar Dic 4 15:58:58 CET 2007


El Tuesday 04 December 2007 00:31:29 Luis Cubas Salvador escribió:
> > From: pierre1 en racsa.co.cr> To: cconclase en listas.conclase.net> Date: Mon,
> > 3 Dec 2007 16:10:13 -0600> Subject: [C con Clase] Duda con "cin"> > He
> > estado intentando utilizar el comando "cin", para hacer el ejercicio 1
> > del > Capítulo 11. Sin embargo, cuando ingreso nombres compuestos
> > (separados por > espacios), el programa se vuelve loco y empieza a correr
> > sin control. > ¿Existe algún comando para almacenar nombres con espacios,
> > tal vez alguna > librería aparte de iostream?> > Gracias,> > Pierre> >
> > Adjunto el archivo con el ejercicio mencionado.
>
> ASI DE FACIL PIERRE..USA GETS()..QUE PERMIE CAPTURAR UN FLUJO DE CADENA, NO
> IMPORTA LOS ESPACIOS..SIMPLEMENTE ES MEJOR QUE CAPRURAR UNA CADENA QUE CON
> CIN...UENO KUIDATE!!

...y mejor que gets, yo diría fgets... El uso de gets es un tanto peligroso ya 
que no controla el tamaño de la cadena que se le ingresa, y si esta es mayor 
al espacio de memoria asignada a la variable, estamos en problemas...
En cambio fgets controla el tamaño de la cadena ingresada.
Si mal no recuerdo sería fgets(variable, tamaño, fuente). Por ejemplo si 
queremos ingresar una cadena de no más de 10 caracteres por teclado a  la 
variable "cadena", quedaría algo así:

fgets(cadena, 10, stdin);

Saludos y suerte...


-- 
OM
omurray en gmail.com
MSN: esomy_m en hotmail.com
ICQ: 41599359
JID: Crux en jabber.freenet.de
http://mysteriouswaystg.blogspot.com
***********************************************************
"Entre tantas preguntas sin responder, una será respondida:
¿Qué revolución compensará las penas de los hombres?..."
	Andrés Rivera - La revolución es un sueño eterno.

Powered by Debian Etch GNU-Linux - kernel 2.6.17-2-K7 
&&
Powereb by Ubuntu Gutsy Gibbon 7.10 GNU-Linux - kernel 2.6.22-14




Más información sobre la lista de distribución Cconclase