>>367,369
間違えました。
8バイトだからこうなるんですね。
変換後の中身を確認したらエンディアンも問題なさそうです。
ありがとうございました。

uint64_t a;
unsigned char b[8];
reinterpret_cast<uint64_t &>(b) = a;