#include "endian.h" int toLittleEndian(int x) { unsigned char result[sizeof(int)]; for (int i = 0; i < sizeof(int); i++) { result[i] = x & 0xff; x >>= 8; } return *(int*)result; } int fromLittleEndian(int x) { int result = 0x0; for (int i = 0; i < sizeof(int); i++) result |= (int)(((unsigned char*)&x)[i]) << (i << 3); return result; }