网站大量收购独家精品文档,联系QQ:2885784924

LINUX网络编程常用函数.pdf

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
LINUX网络编程常用函数

1.字节序函数 #include netinet.h uint16_t htons(uint16_t host16bitvalue); uint32_t htonl(uint32_t host32bitvalue); 返回:网络字节序值 uint16_t ntohs(uint16_t net16bitvalue); uint32_t ntohl(uint32_t net32bitvalue); 返回:主机字节序值 一个测试本机字节序的程序,可参见见unpv12e:intro/byteorder.c。 2.字节操作函数 #include strings.h void bzero(void *dest, size_t nbytes); void bcopy(const void *src,void *dest,size_t nbytes); int bcmp(const void *ptr1,const void *ptr2,size_t nbytes); 返回:0—相等,非0—不相等 #include string.h void *memset(void *dest, int c, size_t len); void *memcpy(void *dest,void *src, size_t nbytes); int memcmp(const void *ptr1, const void *ptr2, size_t nbytes); 0— 0 0— 返回: 相同, 或 不相同;进行比较操作时,假定两个不相等的字节均为无符号字符 (unsigned char)。 3.地址转换函数 #include arpa/inet.h int inet_aton(const char *strptr, struct in_addr *addrptr); 返回:1—串有效,0—串有错。 in_addr_t inet_addr(const char *strptr); 32 INADDR_NONE 返回:若成功,返回 为二进制的网络字节序地址;若有错,则返回 。 char *inet_ntoa(struct in_addr inaddr); 返回:指向点分十进制数串的指针。 int inet_pton(int family,const char *strptr,void *addrptr); 返回:1—成功;0—输入不是有效的表达格式,-1—出错。 const char *inet_ntop(int family,const void *addrptr, char *strptr, size_t len); — NULL— 返回:指向结果的指针 成功, 失败。 说明:  inet_aton函数的指针若为空,则函数仍然执行输入串的有效性检查,但 不存储任何结果。  inet_addr的缺陷:出错返回值INADDR_NONE等于 255.255.255.255 (IPv4 的有限广播地址),所以该函数不能处理 此地址。 尽量使用inet_aton,不使用inet_addr。  inet_ntoa函数的执行结果放在静态内存中,是不可重入的。  参数family可以是AF_INET,也可以是AF_INET6,若参数family不 被支持,则出错,errno置为EAFNOSUPPORT。  指针addrptr是结构指针。  len指定目标的大小,避免缓冲区溢出。如果len太小,则返回一个空指 针,errno置为ENOSPC。为有助于规定该大小,有如下定义: #include netinet.h #define INET_ADDRSTRLEN 16/*fro IPv4 dotted-decimal */ #define INET6_ADDRSTRLEN46/*forIPv6 hex string */  inet_ntop函数的参数strptr不能为空指针,成功时,此指针即是函数

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档