概述
从PostgreSQL传来的二进制数据是网络字节顺序的,即高位先到,低位后到.
使用时转换成本机字节顺序, 才能万无一失.
//将网络字节序的字节数据,转换成本机字节顺序的:
long long netToHost_Int8(byte * bytes, int len = 8)
{
unsigned long long llv = 0;
for (int i = 0; i < len; i++){
llv <<= 8;
llv |= bytes[i];
}
return llv;
}
double netToHost_Double(char * chars)
{
unsigned long long llv = netToHost_Int8((byte*)chars);
return *(double*)&llv;
}
int netToHost_Int4(char * chars)
{
return (int)netToHost_Int8((byte*)chars, 4);
}
short netToHost_Int2(char * chars)
{
return (short)netToHost_Int8((byte*)chars, 2);
}
最后
以上就是洁净小伙为你收集整理的转换字节顺序的全部内容,希望文章能够帮你解决转换字节顺序所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复