我有一个char [8]我已经从使用big endian创建的文件中读取。
如何将它的值读入int?(以这种方式在大小端机器上均可使用)。
例如:
如果我有,
char buffer[4] = {0,0,1,01}
,我要unsigned int i = 257
(我正在使用c ++)
说明:我不需要在大小端之间转换。我需要一种将缓冲区加载到int的方法。类似的东西:
i = buffer[0] << 24 | buffer[1] << 16 | buffer[2] << 8 | buffer[3]
但是更有效\漂亮。