socket实现简易聊天小程序

本文是关于网络编程的实践,通过Linux下的socket和epoll技术,详细阐述了如何构建一个简单的聊天服务器与客户端通信的程序。
摘要由CSDN通过智能技术生成

这是网络编程的小练习,在Linux下用socket,epoll实现服务器端与客户端的通信。
代码如下:

服务器端:
   #include"func.h"
//用进程池实现服务器端向客户端并行传输文件
int main()
{
    int sfd=socket(AF_INET,SOCK_STREAM,0);

    struct sockaddr_in seraddr,cliaddr;//cliaddr用于accept函数
    int ret;
    int len_client=sizeof(cliaddr);
    seraddr.sin_family=AF_INET;
    seraddr.sin_port=htons(2000);
    seraddr.sin_addr.s_addr=inet_addr("192.168.13.128");
    ret=bind(sfd,(struct sockaddr*)&seraddr,sizeof(seraddr));//绑定IP和端口号
    if(ret==-1){
        perror("bind");
        return -1;
    }

    listen(sfd,10);//开始监听

    //构造进程池
    int epfd=epoll_create(1);
    struct epoll_event event,evs[3];
    memset(&event,0,sizeof(event));
    event.data.fd=sfd;
    event.events=EPOLLIN;
    epoll_ctl(epfd,EPOLL_CTL_ADD,sfd,&event);//注册sfd

    memset(&
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值