升级版聊天室

主要是利用所学网络编程来实现聊天室功能,包括客户端和服务端两个部分。

代码以上传至github,可通过github或者个人主页查看

客户端

客户端的内容如下:

  1. 使用配置文件配置自己的监听端口,服务器的监听端口等信息

  2. 用户之间可以通过"@用户名 信息"来实现私聊

  3. 客户端在一个固定端口上监听服务器转发的来自其他用户的私聊、公聊以及系统信息

  4. 客户端所接受到的所有信息保存日志文件中,可利用tail -f 文件名获取实时聊天信息

  5. 客户端解析来自服务端的结构体,内容如下:

struct Message{  
 char from[20];  
 int flag;//若flag为1则为私聊信息,0为公聊信息,2则为服务器的通知信息  
 char message[1024]; 
};

服务端

  1. 服务端在固定接口接收来自所有客户端的消息

  2. 每收到一条公聊消息,都转发给所有在线用户

  3. 每收到私聊消息,只转发给目标用户

  4. 当私聊用户不存在或下线,通过通知信息告知该用户

  5. 在用户上线的时候,发送欢迎信息并告知所有在线用户该用户上线

  6. 在收到用户信息#时,发送给该用户当前在线人数以及所有用户信息

具体效果如下:

用户界面:

在这里插入图片描述

服务端界面:

在这里插入图片描述

用户的log日志显示:

在这里插入图片描述

转载请注明出处!!!

如果有写的不对或者不全面的地方 可通过主页的联系方式进行指正,谢谢

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值