c语言——socket编程

socket编程

socket函数

/*创建一个socket*/
int socket(int family,int type,int protocol)

family: 指定使用的协议簇:AF_INET(IPv4) AF_INET6(IPv6) AF_LOCAL(UNIX协议) AF_ROUTE(路由套接字) AF_KEY(秘钥套接字)
type:指定使用的套接字的类型:SOCK_STREAM(字节流套接字) SOCK_DGRAM
protocol:如果套接字类型不是原始套接字,那么这个参数就为0

bind函数

/*捆绑socket与一个本地地址*/
int bind(int sockfd, struct sockaddr *myaddr, int addrlen)

sockfd: socket函数返回的套接字描述符
sockaddr:
struct sockaddr{
unsigned short sa_family; //通信协议类型族AF_xx
char sa_data[14]; //14字节协议地址,包含该socket的IP地址和端口号
};
addrlen: 结构sockaddr的长度

connect函数

//连接服务器操作
int connect(int sockfd,const struct sockaddr *serv_addr,socklen_t addrlen)

listen函数

//监听客户端的请求
int listen(int sockfd, int backlog)

sockfd:socket函数绑定bind后套接字描述符
backlog:设置可连接客户端的最大连接个数,当有多个客户端向服务器请求时,收到此值的影响。默认值20

accept函数

//接受一个client连接
int accept(int sockfd,struct sockaddr *cliaddr,socklen_t *addrlen)

收发数据——除read/write之外)

int send(int sockfd, const void *msg,int len,int flags)
int recv(int sockfd, void *buf,int len,unsigned int flags)

socket实现demo
serve

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值