64位网络字节序与主机字节序转换

 64位网络字节序与主机字节序转换

unsigned long long ntohll(unsigned long long val)
{
    
if (__BYTE_ORDER == __LITTLE_ENDIAN)
    
{
        
return (((unsigned long long )htonl((int)((val << 32>> 32))) << 32| (unsigned int)htonl((int)(val >> 32));
    }

    
else if (__BYTE_ORDER == __BIG_ENDIAN)
    
{
        
return val;
    }

}


unsigned 
long long htonll(unsigned long long val)
{
    
if (__BYTE_ORDER == __LITTLE_ENDIAN)
    
{
        
return (((unsigned long long )htonl((int)((val << 32>> 32))) << 32| (unsigned int)htonl((int)(val >> 32));
    }

    
else if (__BYTE_ORDER == __BIG_ENDIAN)
    
{
        
return val;
    }

}

 

posted on 2012-06-20 16:50 MrRightLeft 阅读(6602) 评论(1)  编辑 收藏 引用 所属分类: C/C++

评论

# re: 64位网络字节序与主机字节序转换 2015-03-17 14:42 aaa

少了个右括号。。。  回复  更多评论   


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理


<2011年5月>
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

导航

统计

随笔分类

随笔档案

文章分类

文章档案

搜索

最新评论

阅读排行榜

评论排行榜