常用 socket编程 数据转换

htonl(将32位主机字符顺序转换成网络字符顺 序)
相关函数 htons,ntohl,ntohs
表头文件 #include<netinet/in.h>
定义函数 unsigned long int htonl(unsigned long int hostlong);
函数说明 htonl()用来将参数指定的32位hostlong 转换成网络字符顺序。
返回值 返回对应的网络字符顺序。

ntohl(将32位网络字符顺序转换为主机字符顺序)

相关函数 htonl, htons, ntohs

表头文件 #include<netinet/in.h>

定义函数 unsigned long int ntohl(unsigned long int netlong);

函数说明ntohl()用来将参数指定的32位netlong转换成主机字符顺序。

返回值 返回对应的主机字符顺序。

htons(将16位主机字符顺序转换成网络字符顺序)
相关函数 htonl,ntohl,ntohs
表头文件 #include<netinet/in.h>
定义函数 unsigned short int htons(unsigned short int hostshort);
函数说明 htons()用来将参数指定的16位hostshort转换成网络字符顺序。
返回值 返回对应的网络字符顺序。

ntohs(将16位网络字符顺序转换为主机字符顺序)

相关函数 htonl, htons, ntohl

表头文件 #include<netinet/in.h>

定义函数 unsigned short int ntohs(unsigned short int netshort);

函数说明ntohs()用来将参数指定的16位netshort转换成主机字符顺序。

返回值 返回对应的主机字符顺序。

inet_addr(将网络地址转成二进制的数字)
相关函数 inet_aton,inet_ntoa
表头文件 #include<sys/socket.h>
#include<netinet/in.h>
#include<arpa/inet.h>
定义函数 unsigned long int inet_addr(const char *cp);
函数说明 inet_addr()用来将参数cp所指的网络地址字符串转换成网络所使用的二进制数字。网络地址字符串是以数字和点组成的字符串,例 如:“163.13.132.68”。

inet_aton(将网络地址转成网络二进制的数字)
相关函数 inet_addr,inet_ntoa
表头文件 #include<sys/scoket.h>
#include<netinet/in.h>
#include<arpa/inet.h>
定义函数 int inet_aton(const char * cp,struct in_addr *inp);
函数说明 inet_aton()用来将参数cp所指的网络地址字符串转换成网络使用的二进制的数字,然后存于参数inp所指的in_addr结构中。返回值 成功则返回非0值,失败则返回0。
结构in_addr定义如下:

  1. struct in_addr
  2. {
  3. unsigned long int s_addr;
  4. };

inet_ntoa(将网络二进制的数字转换成网络地址)
相关函数 inet_addr,inet_aton
表头文件 #include<sys/socket.h>
#include<netinet/in.h>
#include<arpa/inet.h>
定义函数 char * inet_ntoa(struct in_addr in);
函数说明 inet_ntoa()用来将参数in所指的网络二进制的数字转换成网络地址,然后将指向此网络地址字符串的指针返回。
返回值 成功则返回字符串指针,失败则返回NULL。

来自: http://hi.baidu.com/jrckkyy/blog/item/68dc0a0e1a2479ed37d122d2.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值