I have a char *key that represents hex values: "a35f64d2e1b5f5f" and I need to strore that in a u64 variable (64 bits). Since the char array is 16 bytes, I need to make so that the u64 variable stores each hex value into 4 bits. Therefore the whole variable will store (4 * 16) bits.
That was just an example of the values I could get, they can in fact be any 16 hex values. They specifically have to go into a u64 and I really don't know how to left shift only 4 bits at a time.