一个小函数,大家帮我看看吧!!
自己写的一个Int转byte数组的函数,由于int为32为,byte为8位,所以用byte[4]来接受一个int
代码如下:
public byte[] itob(int i)
{
byte[] b={0,0,0,0};
b[0]=(byte)(b[0]|i);
for(int m=1;m<=3;m++)
{
i=i>>8;
b[m]=(byte)(b[m]|i);
}
return b;
}
public int btoi(byte[] b,int s)
{
int i=0;
i=i|b[s];
for(int m=1;m<=3;m++)
{
i=i<<8;
i=i|b[s+m];
}
return i;
}
可是运行结果int转为byte[]再转回来却错了,请帮我挑挑问题吧