所以我把一个整数转换成4个字节的数据。当字节shifitng一个int到4个字节后,我怎样才能移回int(C)
img[4] = (imagewidth >> 24) & 0xFF;
img[5] = (imagewidth >> 16) & 0xFF;
img[6] = (imagewidth >> 8) & 0xFF;
img[7] = imagewidth & 0xFF;
img[8] = (imageheight >> 24) & 0xFF;
img[9] = (imageheight >> 16) & 0xFF;
img[10] = (imageheight >> 8) & 0xFF;
img[11] = imageheight & 0xFF;
现在我该如何将其转移回整数。所以img[8]
- img[11]
回单int
或img[4]
- img[7]
回单int
我,如果我诱使你'imagewidth'和'imageheight'变量只是'int'正确。你应该让他们'unsigned'或者甚至更好'uint32_t',因为你假设32位。 – 2010-09-24 21:23:22
确保'img []'被声明为'unsigned char'。如果不是这样,那么在执行算术将单个字节重新组合成更大的值时,您会碰到有趣的问题。 – RBerteig 2010-09-24 21:30:21