Nicolas Mora nicolas@babelouest.org writes:
memcpy (I.b + 8, R + (i * 8), 8); // This one works I.u64[1] = *(R + (i * 8)); // This one doesn't work
Is there something I'm missing?
The reason it doesn't work is the type of R. R is now an unaligned uint8_t *. *(R + (i * 8)) (the same as R[i*8]) is an uint8_t, not an uint64_t.
Regards, /Niels