Título: copiar caracteres en una cadena Publicado por: mapers en 8 Julio 2010, 04:24 am hola gente quisiera que me digan de que manera podria copiar caracteres en una cadena por ejemlo quiero copiara la letra "a" en una cadena ....
strncpy(Arreglo[i++],"a",1)----->seria de esta forma o de que manera para copiar la a dentro del arreglo...gracias de antemano Título: Re: copiar caracteres en una cadena Publicado por: nicolas_cof en 8 Julio 2010, 04:28 am mapers, te dejo un link que te puede servir...
http://c.conclase.net/librerias/?ansifun=strncpy Salu10. Título: Re: copiar caracteres en una cadena Publicado por: @synthesize en 8 Julio 2010, 06:25 am Código Así mismo, no varía mucho de lo que tu escribiste. E intenta poner códigos completos, para comprender mejor lo que deseas hacer. Título: Re: copiar caracteres en una cadena Publicado por: mapers en 8 Julio 2010, 06:46 am lo que quiero hacer es copiar el caracter a 100 veces en el arreglo de esa manera
Código
Título: Re: copiar caracteres en una cadena Publicado por: @synthesize en 8 Julio 2010, 06:50 am 100 veces en una celda o 1 vez en 100 celdas? Especifica xD
Para lo 2º: Código
Título: Re: copiar caracteres en una cadena Publicado por: mapers en 8 Julio 2010, 06:52 am 1 ves en 100 celdas
Título: Re: copiar caracteres en una cadena Publicado por: @synthesize en 8 Julio 2010, 06:55 am 1 ves en 100 celdas Ya te he dejado el code arriba :xD También lo puedes hacer sin strncpy Código
Aun que esto es para enteros claro Título: Re: copiar caracteres en una cadena Publicado por: Littlehorse en 8 Julio 2010, 06:58 am :o.
Que se supone que es "arreglo"? es una matriz o un vector? ten en cuenta que el primer parámetro de strncpy es char*. Si "arreglo" es una cadena, haciendo arreglo[cont] estas refiriéndote a un char. Código
Lean sobre manejo de cadenas. Saludos Título: Re: copiar caracteres en una cadena Publicado por: @synthesize en 8 Julio 2010, 07:09 am :o. Que se supone que es "arreglo"? es una matriz o un vector? ten en cuenta que el primer parámetro de strncpy es char*. Si "arreglo" es una cadena, haciendo arreglo[cont] estas refiriéndote a un char. Código
Lean sobre manejo de cadenas. Saludos No se si asignar directamente un carácter a una cadena es buena práctica, pero a mi en clase (Con borland c++ 3.1) me ha dado problemas, por eso siempre acababa usando strncpy.. (Es cosa del compilador? Título: Re: copiar caracteres en una cadena Publicado por: Littlehorse en 8 Julio 2010, 07:23 am Es que de la forma que planteaste es imposible usar strncpy, porque le pasas un char como parámetro cuando el esperado es char*.
No hay ningún problema en asignar caracteres de esa forma, porque haciendo "arreglo[i]" te referís a una posición del vector, no a toda la cadena. La única forma de usar strcpy como plantean es que "arreglo" sea un arreglo de punteros, pero según veo no es el caso. Suponiendo que "arreglo" es una cadena (char[]), la única forma de usar strcpy junto con la sintaxis de arreglos, es pasando la dirección de memoria de dicha posicion. Algo así: Código Con lo cual strcpy comenzaría a copiar desde la posición expuesta. En este caso no tiene mucho sentido hacer algo así, ya que asignar caracteres a posiciones de un vector es perfectamente valido. Lo que es invalido es asignar dos cadenas (char[], por lo menos en C, no sucede lo mismo con strings en C++/STL). Saludos Título: Re: copiar caracteres en una cadena Publicado por: @synthesize en 8 Julio 2010, 07:30 am Gracias por responder, ya he visto claro mi error, fantástico como siempre lh.
Código
Título: Re: copiar caracteres en una cadena Publicado por: mapers en 8 Julio 2010, 07:37 am gente y si quiero por ejemplo dar una cadena de 3 caracteres y que los permute por ejemplo :
mar mmaarr mmmaaarrr y asi sucesivamente seria algo asi Código
pero no se lo que pasa cuando ingreso por ejemplo en el k =10 e ingreso la palabra mar esto sale : mar mmaarrU mmmaaarrr mmmmàáâã($>aaaaÔ÷"rrrrV mmmmmáâã($>aaaaa÷"rrrrr mmmmmmâã($>aaaaaa"rrrrrrW mmmmmmmã($>aaaaaaarrrrrrr mmmmmmmm($>aaaaaaaarrrrrrrrX mmmmmmmmm$>aaaaaaaaarrrrrrrrr mmmmmmmmmm>aaaaaaaaaarrrrrrrrrrY me salen otros caracteres a que se deve gracias de antemano por todo .... Título: Re: copiar caracteres en una cadena Publicado por: leogtz en 8 Julio 2010, 07:45 am O pudiera usarse esto:
Código
Título: Re: copiar caracteres en una cadena Publicado por: mapers en 8 Julio 2010, 07:47 am pero en mi funcion que cree porque me bota otros caracteres que no son ?????
Título: Re: copiar caracteres en una cadena Publicado por: do-while en 8 Julio 2010, 09:12 am ¡Buenas!
A ver, si tu funcion te da caracteres extraños es por que tu cadena tiene carateres extraños. Estudia sobre cadenas, porque se te olvida un dato muy importante, saber como delimitar la infrmacion que contiene una cadena. En ningun punto de tu programa estas indicando donde termina ninguna de las cadenas que vas a imprimir. En lugar de un bucle, o de intentar asignar valores individuales por medio de un bucle, ya que esto termina ralentizando el programa, puedes usar tambien la funcion memset (http://c.conclase.net/librerias/index.php?ansifun=memset#inicio). Que viene con la libreria estandar de C, en string.h, y esta optimizada para llevar a cabo el trabajo que quieres. Echale un vistazo a la libreria estandar (http://c.conclase.net/librerias/index.php), veras que tienes muchas funciones utiles (aunque cuidado, tambien las hay inutiles e incluso peligrosas por su falta de seguridad). ¡Saludos! Título: Re: copiar caracteres en una cadena Publicado por: mapers en 8 Julio 2010, 21:38 pm entonces que le falta a mi programa para que no me salgan esos valores que yo no considero ...............
Título: Re: copiar caracteres en una cadena Publicado por: MIG80 en 8 Julio 2010, 22:09 pm Que raro, no el código no parece tener errores.
Título: Re: copiar caracteres en una cadena Publicado por: mapers en 8 Julio 2010, 22:14 pm pero si arreglo es de 100 como lo va a sobrepasar men !!
Título: Re: copiar caracteres en una cadena Publicado por: MIG80 en 8 Julio 2010, 22:18 pm Si, si. Edite mi respuesta anterior porque me di cuenta de mi error. Bueno, se te olvido finalizar las cadenas de caracteres. Antes del cout debes poner la marca de fin de cadena ('\0') en los arreglos 'arreglo1', 'arreglo2' y 'arreglo3':
Código: ... PD: No grites y aprende a decir gracias. Saludos. Título: Re: copiar caracteres en una cadena Publicado por: do-while en 9 Julio 2010, 00:15 am ¡Buenas!
Hombre... no se lo des todo mascadito porque asi el chaval no aprende a investigar... imagina que un dia se levanta sin internet y que no tiene ningun tutorial ni apunte ni libro, porque cada vez que no sabe algo viene aqui y en lugar de decirle lo que tiene que buscar, mirar o investigar se lo damos todo hecho. En ese momento dejara de aprender, porque como no se lo podremos decir y no tendra material no pegara un palo al agua... ¡Saludos! Título: Re: copiar caracteres en una cadena Publicado por: MIG80 en 9 Julio 2010, 01:33 am Si pues... tienes mucha razón do-while. Saludos. Título: Re: copiar caracteres en una cadena Publicado por: nicolas_cof en 9 Julio 2010, 03:08 am mapers, ya se te ha sugerido en varias oportunidades que leas, ya que muchos coinciden en que tenes muchos conceptos errados y no muy claros.
Acordate que los libros no muerden, al menos por ahora (http://4.bp.blogspot.com/__7LB7PqxV68/Sb43ugmZJcI/AAAAAAAAB_E/n3xiA3J4hM8/s400/librosnomuerden.jpg) Nota: espero que no te lo tomes a mal ;) Salu10. Título: Re: copiar caracteres en una cadena Publicado por: mapers en 9 Julio 2010, 05:15 am oks tienes razon gracias por todo .....gracias por su ayuda me voy a leer como me dijeron
|