XOR SWAP
void xorSwap(void *x, void *y, int len) {
if (x != y) {
for(; len-- > 0; x++; y++) {
*(char*)x ^= *(char*)y;
*(char*)y ^= *(char*)x;
*(char*)x ^= *(char*)y;
}
}
}
Mero