static void UpdateNumber(int index, long num) { unsigned long l = num; unsigned char b[4]; b[0] = (unsigned char)(l & 0xFF); b[1] = (unsigned char)((l >> 8) & 0xFF); b[2] = (unsigned char)((l >> 16) & 0xFF); b[3] = (unsigned char)((l >> 24) & 0xFF); if (cache[index].obj != 0) free(cache[index].obj); cache[index].obj = malloc(4); memcpy(cache[index].obj, b, 4); }