这是对该帖子的后续跟进,但有一个不同的问题,所以我觉得我应该在单独的线程中提问。
我正处于从文件中读取的内存中有四个连续字节的地步。我想将它们存储为一个位数组(它们的实际 int 值直到以后才重要)。当我打印出 int 中的内容时,我注意到它似乎以相反的顺序存储(小端序)。
有没有人有一个很好的方法来反转字节的顺序。然后一旦反转,挑选出跨越两个字节的连续位并转换回整数?
unsigned char data[] = { 0x00, 0x02, 0x45, 0x28 };
NSInteger intData = *((NSInteger *)data);
NSLog(@"data:%08x", intData); // data:28450200