网络聊天室总结(经验感悟)

测试结果与分析

可以实现注册、登录、忘记密码、退出等基础功能。
在登录成功后会进入聊天功能界面, 包含以下功能:
1. 私聊 2. 群聊
3. 文件传输 4. 点赞
5. 修改个性签名 6. 充值会员
7. 指定用户禁言 8. 全员禁言
9. 指定用户解禁 10. 全员解禁
11. 查看聊天记录 12. 退出私聊界面
13. 退出(不退出客户端)14.退出(退出客户端)
(其中发送消息,表情,常用语等功能已涵盖在私聊功能中,私聊界面上会显示用户昵称、个性签名、点赞、VIP、是否管理员、在线人数和在线人员名单等信息,并实时刷新)

项目中遇到的问题与解决途径及方法

1服务器在记录客户端的tmp_addr时,不可使用指针方式传递,因为服务器和客户端是两个不同的地址。

2.注册功能时,可直接使用sqlite3数据库中的primary key功能确保注册账号的唯一性.

3.登录账号时,需要链表临时记录客户端的地址族信息和用户昵称,以便用户请求服务器时,服务器能够对应发送信息。

4.私聊时需要考虑对方是否注册,注册后是否登录两种情况。

5.群聊需要为管理员提供禁言选项

6.文件传输以及查看聊天记录时,文件打开后记得要关闭文件。

7.注册会员、点赞、修改个性签名、禁言标志位等需要存入数据库中,这样用户在退出后重新登录时会保留之前的信息而不会丢失。

8.踢人、好友登录、退出等操作需要向所有已登录用户发送好友上线和好友下线的通知。

9.为用户提供两种下线方式,方便用户操作。

10.由于程序会阻塞在scanf命令处,为确保界面能够实现实时刷新功能,故设置enter键刷新功能,enter键的ASC码为0和10,本程序中设置case 0来向服务器请求传回最新信息,服务器处专门写了一个信息传输函数以响应客户端的请求。

你可能感兴趣的:(项目)