Programación General => C/C++ => Mensaje iniciado por: javier.egea en Lunes 4 de Septiembre de 2006, 09:51
Título: Xor
Publicado por: javier.egea en Lunes 4 de Septiembre de 2006, 09:51
hola a todos, tengo una funcion en que, pasados dos char* necesito hacer XOR de bytes de ambos y retornar un char* con el resultado. Alguien me puede decir que error existe en este codigo que uso??
const char* xorData(char* cadena1, char* cadena2) { int longit; int i; char *c1,*c2,*result=NULL;
c1=cadena1; c2=cadena2;
if (strlen(c1)>strlen(c2)) longit= strlen(c2); else longit=strlen(c1);
for (i=0;i<longit;i++) { printf("las letras son: %c y %c",c1,c2); result=c1^c2; printf("las letras son: %c",result); }
return result; }
Gracias
Título: Re: Xor
Publicado por: Geo en Lunes 4 de Septiembre de 2006, 19:44
Te falta reservar memoria para la variable result.
Una vez que obtienes la longitud menor, debieras hacer algo como esto: