[C con Clase] Array de caracteres
Samuel Díaz García
samueldg en arcoscom.com
Dom Abr 13 22:02:19 CEST 2014
Al final has sobreescrito los primeros caracteres d destino.
Eso es así porque los tienes definido en pila y origen se define tras
destino. Ambos array con el tamaño justo de las cadenas.
Usar el const en la definicion de la función ayudaria al compilador a
proteger la variable, aunque el error te daría en ejecución.
Salu2
Samuel Díaz García
El 13/04/2014 20:29, "Marving" <jr.marving en gmail.com> escribió:
> Hola a todos.
> De nuevo por aquí con cuestiones de novatos.
> El programa es bastante sencillo, pero no lo suficiente para mi.
> Copia una array en otra.
> El origen no debería cambiar y el destino tendría que ser una copia del
> origen.
> Pero tras esta copia el origen pierde un numero
> de caracteres, igual a la longitud que tenia en un principio la cadena
> de destino.
>
>
> #include <cstdlib>
> #include <iostream>
> #include <cstring>
>
> using namespace std;
>
> void copicad(char [], char []);
>
> int main(int argc, char** argv) {
>
> char origen [] = "Leones, tigres, ardillas, sapos";
> char destino [] = "Leones, tigres,";
>
> cout << "--origen-- " << origen << " " << "--destino-- " << destino <<
> endl;
> copicad(destino, origen);
> cout << "--origen-- " << origen << " " << "--destino-- " << destino <<
> endl;
>
> cin.ignore();
> cin.get();
> return 0;
> }
>
> void copicad(char destino[], char origen[])
> {
> int i = 0;
> while ((destino[i] = origen[i]) != '\0')
> {
> i++;
> }
> }
>
> output
> --origen-- Leones, tigres, ardillas, sapos --destino-- Leones, tigres,
> --origen-- ardillas, sapos --destino-- Leones, tigres, ardillas, sapos
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20140413/f2243135/attachment.html>
Más información sobre la lista de distribución Cconclase