Linux基于TCP的网络聊天室软件131

Linux基于TCP的网络聊天室软件131

ID:47431584

大小:1.50 MB

页数:15页

时间:2020-01-11

Linux基于TCP的网络聊天室软件131_第页
预览图正在加载中,预计需要20秒,请耐心等待
资源描述:

《Linux基于TCP的网络聊天室软件131》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、淮海工学院计算机工程学院课程设计报告设计名称:Linux程序设计选题名称:基于TCP的网络聊天室的设计与实现姓名:姓名:姓名:专业班级:软件工程系(院):计算机工程学院设计时间:2016.11.16~2016.12.7设计地点:软件实验室、教室成绩:指导教师评语:签名:年月日Linux程序设计报告第14页,共15页1.课程设计目的《Linux程序设计》是一门实践性很强的计算机专业基础课程,课程设计是学习完该课程后进行的一次较全面的综合练习。其目的在于通过实践加深学生对Linux程序设计的理论、方法和基础知识的理解,掌握使用C语言进行Linux程序设计的基本方法,

2、提高运用所学知识分析实际问题、解决实际问题的能力。2.课程设计任务与要求:2.1课程设计要求课程设计选用VIM、GDB和SecureCRT作为开发平台以提高开发效率,尽可能熟练掌握其开发环境。采用结构化程序设计技术进行系统的分析设计,在Visio中画出系统功能结构图和程序流程图,并将相应的图例说明复制到设计报告中。通过这次设计,要求掌握以下内容:1)LinuxC编程工具:GCC和GDB2)文件I/O操作3)文件属性及目录操作4)终端控制与信号处理5)进程控制6)进程间通信7)流式套接字编程8)线程管理2.2课程设计任务(大作业课题一)1)课题名称:基于TCP的网

3、络聊天室的设计和实现。2)内容描述:实现目标:一个在Linux下可以使用的聊天软件,要求实现如下功能:l采用Client/Server架构lClientA登陆聊天服务器前,需要注册自己的ID和密码l注册成功后,ClientA就可以通过自己的ID和密码登陆聊天服务器l多个ClientX可以同时登陆聊天服务器之后,与其他用户进行通讯聊天lClientA成功登陆后可以查看当前聊天室内其他在线用户ClientXlClientA可以选择发消息给某个特定的ClientX,即“悄悄话”功能lClientA可以选择发消息全部的在线用户,即“群发消息”功能lClientA在退出时

4、需要保存聊天记录lServer端维护一个所有登陆用户的聊天会的记录文件,以便备查可以选择实现的附加功能:lServer可以内建一个特殊权限的账号admin,用于管理聊天室Linux程序设计报告第14页,共15页lAdmin可以将某个ClientX“踢出聊天室”3)附加功能:l文件传输3.课程设计说明书3.1需求分析随着科学技术和社会的不断发展,计算机产业越来越发达。人们对于电子信息产品的需求越来越大,在这样一个信息时代,交流的方式日趋多元化和网络化。通信产业的发展非常迅猛,现在的科技已经可以实现很多种网络交流方式和信息传播方式,但是聊天室一直是最基础之一。聊天室

5、技术仍然是我们学习的基础和重点。本次课题将全面的分析与设计一个网络聊天室。网络聊天室现在已经有相当成熟的发展了,QQ,微信等主流的聊天工具是这项技术的代表。在当下成熟的编程环境下,聊天室的设计与实现是一个重要的基础练习。下面将简要介绍一下网络聊天室的特点:1)便捷性:摆脱了传统的通信方式,利用网络的廉价性,可以使用户更加自由地相互交流。2)安全性:网络环境下,用户可以针对地去了解自己想要了解的信息,交流时可以使用虚拟的身份,一定程度上很好地保护了用户的个人隐私信息。3)实时性:用户只要与想要通信的另一方取得联系,即可想面对面对话一样交流。3.2概要设计本次试验设

6、计一个网络聊天室,该软件采用Client/Server架构。聊天室的功能主要有:1)ClientA登陆聊天服务器前,需要注册自己的ID和密码2)注册成功后,ClientA就可以通过自己的ID和密码登陆聊天服务器3)多个ClientX可以同时登陆聊天服务器之后,与其他用户进行通讯聊天4)ClientA成功登陆后可以查看当前聊天室内其他在线用户ClientX5)ClientA可以选择发消息给某个特定的ClientX,即“悄悄话”功能6)ClientA可以选择发消息全部的在线用户,即“群发消息”功能7)ClientA在退出时需要保存聊天记录8)Server端维护一个所

7、有登陆用户的聊天会的记录文件,以便备查3.3详细设计1)功能结构图:Linux程序设计报告第14页,共15页1)程序流程图:l注册:l登录:Linux程序设计报告第14页,共15页l传送文件:l发送消息:Linux程序设计报告第14页,共15页4.课程设计成果4.1主要模块设计1)注册模块:client.c:server.c:Linux程序设计报告第14页,共15页check.c:此截图是在注册时系统判断注册用户是否重名的模块:Linux程序设计报告第14页,共15页2)发送消息模块:client.c:创建线程处理消息队列。这是消息处理函数:Linux程序设计报

8、告第14页,共15页se

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。