加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_丽江站长网 (http://www.0888zz.com/)- 科技、建站、数据工具、云上网络、机器学习!
当前位置: 首页 > 服务器 > 搭建环境 > Unix > 正文

UNIX环境高级编程:网络编程常用函数及结构

发布时间:2016-09-28 13:44:33 所属栏目:Unix 来源:站长网
导读:副标题#e# #include arpa/inet.h int inet_aton(const char *strptr, struct in_addr *addrptr); //将strptr字符串转换成32位的网络字节序(二进制值--a.b.c.d-32)。 int_addr_t inet_addr(const char *strptr) //功能通上,返回地址。 in_addr addr; addr.

关闭双向通道

int close (int sockfd);

int shutdown(int sockfd,

int howto)    //SHUT_RD关闭读终端,SHUT_WR关闭写终端。

返回值:

成功:0

失败:-1

接收、发送数据(TCP)

ssize_t recv(int socket, void *buffer, size_t length, int flages);//接收数据

ssize_t send(int socket, const void *buffer, size_t length, int flags)//发送数据

头文件:

#incldue <sys/socket.h>

参数:

socket: 已经连接的Socket。

buffer: 指向用于接收数据的缓冲区的指针。

length: 缓冲区的大小(字节)。

flags: MSG_OOB或0(send()还有etc).

返回值:

成功接收或发送的字节数。

失败返回-1,并设置errno。

recv返回0,连接断开。

UNIX环境高级编程:网络编程常用函数及结构

接收、发送数据(UDP)

头文件:

#include < sys/types.h >   

#include < sys/socket.h >

接收远程主机经指定的socket传来的数据(接收)

ssize_t recvfrom(int sockfd,    //套接字描述符

void *buf,    //缓冲区

int len,    //可接收数据的最大长度.

unsigned int flags,    //一般设0,

struct sockaddr *from,    //指定欲传送的网络地址

socket_t *fromlen);    //结构长度

ssize_t 相当于 int,socket_t 相当于int 。

返回值:

成功则返回接收到的字符数,

失败返回-1.

将数据由指定的socket传给对方主机(发送)

int sendto ( int s ,     //已建好连线的socket,如果利用UDP协议则不需经过连线操作

const void * msg,     //发送缓冲区

int len,     // 发送的数据大小

unsigned int flags,     //一般设0

const  struct sockaddr * to ,     //指定欲传送的网络地址

int tolen )     //sockaddr的结果长度

返回值

成功则返回实际传送出去的字符数,

失败返回-1,并设置errno 。

使用文件描述符的函数处理套接字时的行为

UNIX环境高级编程:网络编程常用函数及结构

(编辑:应用网_丽江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读