Converting a series of numbers into a 64 bit binary frame..?

memcpy was discussed there, so it's worth a look. The question is not, does it work, it's can you depend on it to always work. That includes, can you implement it safely in all circumstances, including those you can't anticipate?

The mechanism of a raw memory move, vs. a raw conversion by pointer or union, only differs in method. Neither offers the assurance of data alignment that is offered by bit shifting. That is because it's (for better or worse) the only thing that is guaranteed by the language specification.