更新: 我可以很容易地从字节到整数,但我目前的做法似乎不太好。
这是我当前的代码:
static unsigned char* Int32ToBytes(signed int n)
{
unsigned char bytes[4];
for(int i = 0;i<4;i++)
bytes[3-i] = (n & (255 << (i*8))) >> (i*8);
return bytes;
}
我用它来写字节:
fwrite(Int32ToBytes(-1), 1 , 4 , file );
它正在输出:FB 9C 8B 28
当我希望它输出时FF FF FF FF
(有符号整数)。
有任何想法吗?帮助表示赞赏:)