[C con Clase] Pregunta sobre Cadena de caracteres (Arrays)

Williams Cuevas Herrera williamscuevas2002 en hotmail.com
Vie Ene 5 15:32:06 CET 2007


Si quieres guardar cadenas con espacios puedes usar gets, que guarda 
caracteres hasta la longitud -1 especificada, o el caracter \n.
Si trabajas con punteros, es vueno pedir memoria dinámica para la 
introducción de datos.
Salu2
----- Original Message ----- 
From: "Raul Chakraborty" <chakras_ve en hotmail.com>
To: "Lista de correo sobre C y C++" <cconclase en listas.conclase.net>
Sent: Friday, January 05, 2007 11:29 AM
Subject: Re: [C con Clase] Pregunta sobre Cadena de caracteres (Arrays)



Si estas en Borland o Dev, lo mejor es declarar un array fijo he introducir 
los datos en este array fijo... es decir:

char cadena[80];
cin>>cadena; (tambien puedes usar scanf("%s", cadena);

Se usa un array fijo y no un apuntador no inicializado, debido a que el 
apuntador no garantizaria escribir estos datos en una memoria que no este en 
uso, en cambio al declarar un array fijo, se reserva este espacio para el 
programa garantizando de que no estas escribiendo sobre memoria que no te 
pertenece. OJO no digo que no funcione con un apuntador, solo digo que si 
quieres usar un apuntador, deberias inicializaro antes, para evitar que el 
equipo o lo que estes programando funcione inadecuadamente.



________________________________
> Date: Fri, 5 Jan 2007 09:18:17 -0500
> From: lashy84 en gmail.com
> To: cconclase en listas.conclase.net
> Subject: Re: [C con Clase] Pregunta sobre Cadena de caracteres (Arrays)
>
> tambien puedes almacenar la cadena en un string y luego leer el string y 
> guardarlo en una cadena de caracteres char o usarlo como tipo de datos 
> string .
> 2007/1/2, David Reza < l.fix3r.l en gmail.com<mailto:l.fix3r.l en gmail.com>>:
> Hola, me gustaría saber como puedo hacer para que pueda hacer un programa 
> que lea una cadena de caracteres y lo guarde en un array de tipo char.
> Esque leí que la asignación directa solo está permitida cuando se hace la 
> declaración. Entonces no se puede hacer algo como:
> char cadena[];
> cin >> cadena;
> y esperar que todo lo que reciba cadena se guarde en el array?
> Tal vez puede que si, y sólo se guarde la primera palabra ya que un 
> espacio es un carácter nulo y eso le daría a entender al compilador que 
> hasta ahí termina la cadena, pero entonces sí se puede?
> También sé que se puede hacer con un púntero, creo que de la siguiente 
> forma:
> char *pCadena;
> cin >> pCadena;
> o algo así.
> Ojalá puedan orientarme. Saludos
> -------------------------
> | = David Reza = |
> _______________________________________________
> Cconclase mailing list
> Cconclase en listas.conclase.net<mailto:Cconclase en listas.conclase.net>
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net

_________________________________________________________________
Busca desde cualquier página Web con una protección excepcional. Consigue la 
Barra de herramientas de Windows Live hoy mismo y GRATUITAMENTE.
http://www.toolbar.live.com
_______________________________________________
Cconclase mailing list
Cconclase en listas.conclase.net
http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net





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