#include
void ReverseBytes(void *start, int size)
{
char *begin = (char*)start;
char *end = begin + size;
std::reverse(begin, end);
}
#define SwapEndian(a) ReverseBytes(&a, sizeof(a));
Big Endian -> Little Endian
Little Endian -> Big Endian
両方とも、いけます!
というか、データの並び方が違うだけだから、解釈の違いでしか無いから、
当たり前と言えば当たり前。