前阵子在整理一个sha1的算法,输出结果是一个int[5],随手转换为了char[20]。
然后问题就来了,发现输出结果不正确。每个整型中的ch0,ch1,ch2,ch3顺序居然完全颠倒了。
查了相关材料,问题出在x86架构的字节序顺序与网络字节序相反。(低位存高字)
既然是字节序问题,那就好办了,随手写了个以下转换。
int intByteOrderSwitch(int intVal)
{
//转换字节序
int intt= intVal;
前阵子在整理一个sha1的算法,输出结果是一个int[5],随手转换为了char[20]。
然后问题就来了,发现输出结果不正确。每个整型中的ch0,ch1,ch2,ch3顺序居然完全颠倒了。
查了相关材料,问题出在x86架构的字节序顺序与网络字节序相反。(低位存高字)
既然是字节序问题,那就好办了,随手写了个以下转换。
int intByteOrderSwitch(int intVal)
{
//转换字节序
int intt= intVal;