Wenn ich versuche, ein bitweises XOR von zwei Strings zu machen, bekomme ich x∈K oder ähnliche Ausgabe. Der Code Ich verwende:Druckergebnis einer bitweisen XOR in C
char test[] = "teststring";
char test2[] = "testtwostring";
char *bytearray = NULL;
bytearray = malloc(sizeof(char) * (strlen(test2)+1));
for(int j=0; (j< strlen(test) && j< strlen(test2)); j++){
bytearray[j] += test[j]^test2[j];
}
printf(bytearray)
Sollte es nicht das XOR-Ergebnis sowohl Zeichenfolge speichern, die in jedem der bytearray Elemente, und dann eine neue Ergebniszeichenfolge ausdrucken? Gibt es etwas, das mir fehlt?
Verwenden Sie nicht Ihre druckbaren Daten als 'printf()' Formatzeichenfolge. Verwenden Sie immer ein explizites Format. –
Wie genau soll es ausgegeben werden? Als Hex? – samgak